Commit Graph

73 Commits

Author SHA1 Message Date
Apple
7b61786c96 feat: MicroDAO Agents Section + Room roles
Frontend:
- MicrodaoAgentsSection component with role badges
- useMicrodaoAgents hook
- Extended room_role mapping (operations, knowledge, treasury, ai-core, etc.)
- API route for /api/microdao/[slug]/agents

Matrix: All 13 new rooms synced with Matrix
2025-11-30 11:57:24 -08:00
Apple
c9d7681627 feat: District Portals Frontend
Pages:
- /districts - list of all districts with cards
- /districts/[slug] - district detail page
- /soul, /greenfood, /energy-union - shortcut redirects

UI Features:
- District-specific colors and icons
- Lead agent + core team display
- District rooms list with Matrix status
- District nodes list
- Chat widget for lobby room
- Stats (agents, rooms, nodes count)
2025-11-30 11:40:30 -08:00
Apple
85fdcdf0be feat: City Rooms routing implementation
Backend:
- GET /api/v1/city/rooms - list all city rooms
- GET /api/v1/city/rooms/{slug} - get room by slug with host agents

Frontend:
- Updated /city/[slug] page with host agents section
- Added breadcrumb navigation
- Updated API client to fetch room by slug
- Added rewrite for /api/city/rooms/:slug

Task doc: TASK_PHASE_CITY_ROOMS_ROUTING_v1.md
2025-11-30 10:54:39 -08:00
Apple
fcdac0f33c feat: implement Agent Presence Indicators (MVP)
Backend:
- Add /api/v1/agents/presence endpoint
- Integrate with matrix-presence-aggregator
- Add DAGI router health checks

Frontend:
- Create useAgentPresence hook
- Create AgentPresenceBadge component
- Integrate into /agents list page
- Integrate into /agents/:agentId cabinet

Shows real-time online/offline status for all agents.
2025-11-30 09:41:57 -08:00
Apple
c4d7eb4493 fix: correct JSX structure in node page for chat widget 2025-11-30 09:15:17 -08:00
Apple
38e49adeba fix: syntax error in node page - missing closing div 2025-11-30 09:13:01 -08:00
Apple
6297adc0dc feat: implement Agent Chat Widget for entity pages
TASK_PHASE_AGENT_CHAT_WIDGET_MVP.md completed:

Backend:
- Add /api/v1/agents/{agent_id}/chat-room endpoint
- Add /api/v1/nodes/{node_id}/chat-room endpoint
- Add /api/v1/microdaos/{slug}/chat-room endpoint

Frontend:
- Create AgentChatWidget.tsx floating chat component
- Integrate into /agents/:agentId page
- Integrate into /nodes/:nodeId page
- Integrate into /microdao/:slug page

Ontology rule implemented:
'No page without agents' = ability to directly talk to agents on that page
2025-11-30 09:10:45 -08:00
Apple
644edd3f30 feat(mvp): DAGI Integration Fix - gov_level, DAIS, nodes table
TASK_PHASE_MVP_DAGI_INTEGRATION_FIX_20251201

A) Agents Layer:
- A1: Added gov_level to API and UI (list + profile)
- A2: Added dais_identity_id to API and UI
- A3: Added home_microdao_id/name/slug for ownership display

B) MicroDAO Layer:
- B1/B2: Already implemented (agents, rooms, citizens, district badge)

C) Nodes Layer:
- C1: Node Dashboard already implemented
- C2: Created nodes table migration with owner_microdao_id
- C3: INSERT NODE1/NODE2 with dao_daarion ownership

D) Backend Fixes:
- D1: Extended /api/agents/* with DAIS/governance fields
- D2/D3: Already implemented

Files changed:
- services/city-service/repo_city.py
- services/city-service/models_city.py
- services/city-service/routes_city.py
- services/city-service/migrations.py
- apps/web/src/lib/types/agents.ts
- apps/web/src/lib/agent-dashboard.ts
- apps/web/src/app/agents/page.tsx
- apps/web/src/components/agent-dashboard/AgentSummaryCard.tsx

Reports:
- docs/debug/mvp_dagi_integration_fix_report_20251201.md
- docs/tasks/TASK_PHASE_MVP_DAGI_INTEGRATION_FIX_20251201.md
2025-11-30 08:45:07 -08:00
Apple
a23deae3c4 feat(node-dashboard): add MVP dashboard API endpoint
- services/city-service: add /api/v1/nodes/{id}/dashboard endpoint
- services/city-service: add legacy /api/v1/node/dashboard?nodeId=...
- apps/web: update route.ts to use city-service first
- apps/web: fallback to node-registry if city-service fails

Response structure:
  node_id, name, kind, status, tags, agents_total,
  agents_online, uptime (null), metrics_available (false)

Closes TASK_PHASE_NODE_DASHBOARD_API_MVP
2025-11-30 06:59:51 -08:00
Apple
7ff426f975 fix: allow node cabinet fallback when dashboard unavailable 2025-11-30 06:40:32 -08:00
Apple
39f76912ae fix: proxy /api/nodes/* to city-service public endpoints 2025-11-30 06:22:24 -08:00
Apple
dd3624018a fix: Add proper Next.js rewrites for agent/microdao API
- /api/agents/:agentId/dashboard -> /city/agents/:agentId/dashboard
- /api/microdao/* -> /city/microdao/*
- /api/public/* -> /public/*
- /api/city/* -> /city/*

Fixes 404 errors on agent/microdao cabinet pages
2025-11-30 06:17:25 -08:00
Apple
e5bfb19e71 fix(web): handle undefined values in incident transform 2025-11-29 17:17:01 -08:00
Apple
fc0a9b3189 fix(web): transform snake_case API response to camelCase for governance/incidents 2025-11-29 17:14:59 -08:00
Apple
4a30f6c1a9 fix(web): use Docker service name as default for API proxy 2025-11-29 17:12:03 -08:00
Apple
c68b81fad1 fix(web): use INTERNAL_API_URL for API rewrites proxy 2025-11-29 17:09:50 -08:00
Apple
beed5308f1 fix(governance): Rename AgentStatus to AgentGovStatus to avoid conflict
Conflicts with existing AgentStatus from agents.ts
2025-11-29 16:43:07 -08:00
Apple
ec9ff3e633 feat(governance): Migrate Governance Engine to Next.js (apps/web)
BREAKING: Replace old MicroDAO voting with Agent Governance Engine

## New Files
- apps/web/src/lib/types/governance.ts
- apps/web/src/lib/api/governance.ts
- apps/web/src/lib/api/audit.ts
- apps/web/src/lib/api/incidents.ts
- apps/web/src/components/governance/GovernanceLevelBadge.tsx
- apps/web/src/components/governance/ReportButton.tsx
- apps/web/src/components/governance/CityGovernancePanel.tsx
- apps/web/src/components/governance/AuditDashboard.tsx
- apps/web/src/components/governance/IncidentsList.tsx
- apps/web/src/app/audit/page.tsx
- apps/web/src/app/incidents/page.tsx

## Updated Files
- apps/web/src/app/governance/page.tsx - New City Governance UI
- apps/web/src/components/Navigation.tsx - Shield icon for Governance

## Task
docs/tasks/TASK_PHASE_GOVERNANCE_MIGRATION_NEXTJS.md
2025-11-29 16:41:28 -08:00
Apple
deeaf26b0b fix: remove unused auth0 import from orchestrator-team route 2025-11-29 05:21:35 -08:00
Apple
31778a2977 fix: add crew_info to AgentProfile type 2025-11-29 05:20:30 -08:00
Apple
8bf898153a fix: add missing Button UI component for daarion-web build 2025-11-29 05:19:20 -08:00
Apple
a6e531a098 fix: NODE1_REPAIR - healthchecks, dependencies, SSR env, telegram gateway
TASK_PHASE_NODE1_REPAIR:
- Fix daarion-web SSR: use CITY_API_BASE_URL instead of 127.0.0.1
- Fix auth API routes: use AUTH_API_URL env var
- Add wget to Dockerfiles for healthchecks (stt, ocr, web-search, swapper, vector-db, rag)
- Update healthchecks to use wget instead of curl
- Fix vector-db-service: update torch==2.4.0, sentence-transformers==2.6.1
- Fix rag-service: correct haystack imports for v2.x
- Fix telegram-gateway: remove msg.ack() for non-JetStream NATS
- Add /health endpoint to nginx mvp-routes.conf
- Add room_role, is_public, sort_order columns to city_rooms migration
- Add TASK_PHASE_NODE1_REPAIR.md and DEPLOY_NODE1_REPAIR.md docs

Previous tasks included:
- TASK 039-044: Orchestrator rooms, Matrix chat cleanup, CrewAI integration
2025-11-29 05:17:08 -08:00
Apple
0bab4bba08 feat: TASK 038 - Node Guardian & Steward Integration
- Backend: Added dynamic discovery of node agents in repo_city.py
- Backend: Created seed SQL for agent types
- Frontend: Added NodeGuardianCard component
- Frontend: Integrated NodeGuardianCard into Node Dashboard / Profile
2025-11-29 01:46:38 -08:00
Apple
aee8bf00ff fix: add compact prop to CityChatWidget and build fix 2025-11-29 01:37:59 -08:00
Apple
3ccc0e2d43 feat: TASK 037A/B - MicroDAO Multi-Room Cleanup & UI Polish
TASK 037A: Backend Consistency
- Added db/sql/037_microdao_agent_audit.sql
- Added services/city-service/tools/fix_microdao_agent_consistency.py
- Updated repo_city.get_public_citizens with stricter filtering (node_id, microdao_membership)
- Updated PublicCitizenSummary model to include home_microdao and primary_city_room
- Updated NodeProfile model and get_node_by_id to include microdaos list

TASK 037B: UI Polish
- Updated MicrodaoRoomsSection with role-based colors/icons and mini-map
- Updated /microdao/[slug] with new Hero Block (badges, stats, orchestrator)
- Updated /citizens/[slug] with MicroDAO cross-link in DAIS profile
- Updated /nodes/[nodeId] with MicroDAO Presence section
2025-11-29 01:35:54 -08:00
Apple
3f41d0e0a2 feat: TASK 034-036 - MicroDAO Multi-Room Support
TASK 034: MicroDAO Multi-Room Backend
- Added migration 031_microdao_multi_room.sql
- Extended city_rooms with microdao_id, room_role, is_public, sort_order
- Added CityRoomSummary, MicrodaoRoomsList, MicrodaoRoomUpdate models
- Added get_microdao_rooms, get_microdao_rooms_by_slug functions
- Added attach_room_to_microdao, update_microdao_room functions
- Added API endpoints: GET/POST/PATCH /city/microdao/{slug}/rooms

TASK 035: MicroDAO Multi-Room UI
- Added proxy routes for rooms API
- Extended CityRoomSummary type with multi-room fields
- Added useMicrodaoRooms hook
- Created MicrodaoRoomsSection component with role labels/icons

TASK 036: MicroDAO Room Orchestrator Panel
- Created MicrodaoRoomsAdminPanel component
- Role selector, visibility toggle, set primary button
- Attach existing room form
- Integrated into /microdao/[slug] page
2025-11-29 01:07:15 -08:00
Apple
773a955ecc feat: TASK 031-033 - Node Guardian/Steward + Agent & MicroDAO Chat Widgets
TASK 031: Node Agents Discovery
- Documented existing Monitor agents (NODE1, NODE2)
- Created NODE_AGENTS_INVENTORY.md

TASK 032: Node Guardian/Steward Formalize
- Added migration 030_node_guardian_steward.sql
- Added is_node_guardian, is_node_steward to agents
- Added guardian_agent_id, steward_agent_id to node_cache
- Updated repo_city.py for guardian/steward in node queries
- Added NodeAgentsPanel component for Node Dashboard

TASK 033: Agent & MicroDAO Chat Widgets
- Added CityRoomSummary model
- Added primary_city_room to AgentDashboard API
- Added primary_city_room to MicrodaoDetail API
- Added get_microdao_primary_room() function
- Updated Agent Console with Matrix chat section
- Updated MicroDAO page with public chat section
- Reused existing CityChatWidget component
2025-11-28 13:51:51 -08:00
Apple
9a74096708 fix: add fallback URLs to all proxy routes 2025-11-28 10:53:28 -08:00
Apple
3426604209 fix: update proxy routes to use correct internal API URL 2025-11-28 10:48:11 -08:00
Apple
4051c23b1c fix: allow null in AgentMicrodaoMembership role 2025-11-28 10:27:11 -08:00
Apple
ed6c7ae909 fix: unify microdao types imports 2025-11-28 10:26:12 -08:00
Apple
3f53038cf7 fix: restore microdao api functions and update types 2025-11-28 10:25:03 -08:00
Apple
cbd5b2f731 fix: resolve Next.js route conflict in microdao api 2025-11-28 10:23:15 -08:00
Apple
69cc76fe00 feat: implement Task 029 (Agent Orchestrator & Visibility Flow) 2025-11-28 10:19:13 -08:00
Apple
d58347a890 fix: remove duplicate AgentMicrodaoMembership definition 2025-11-28 09:17:27 -08:00
Apple
4268936269 fix: use export type for isolatedModules 2025-11-28 09:16:40 -08:00
Apple
d367e93d36 fix: update visibility scope types to global/private 2025-11-28 09:15:47 -08:00
Apple
b787f3812a fix: add model field to AgentProfile 2025-11-28 09:14:03 -08:00
Apple
884df75282 fix: add public_slug to AgentProfile 2025-11-28 09:12:55 -08:00
Apple
ce8429d392 fix: add missing fields to AgentProfile 2025-11-28 09:11:49 -08:00
Apple
909d1cb314 fix: add avatar_url to AgentProfile for dashboard 2025-11-28 09:10:34 -08:00
Apple
acc06f41d3 feat: UI alignment - Agent Console, Citizens, MicroDAO Dashboard (TASK 2) 2025-11-28 09:09:00 -08:00
Apple
a445ba7d9a fix: use new AgentSummary fields (title, primary_microdao_name) 2025-11-28 08:02:40 -08:00
Apple
5d4fec3337 fix: add visibility fields to AgentPublicProfile type 2025-11-28 08:00:29 -08:00
Apple
616186824c fix: Next.js 15 route handler params type 2025-11-28 07:58:46 -08:00
Apple
15714fb170 feat: unified Agent/Citizen model with visibility controls
- Add visibility_scope, is_listed_in_directory, is_system, primary_microdao_id to agents
- Create unified list_agent_summaries method
- Add PUT /city/agents/{id}/visibility endpoint
- Add AgentVisibilityCard component
- Update AgentSummary types for frontend
2025-11-28 07:56:33 -08:00
Apple
e7aff95408 fix: Next.js 15 params type in nodes route 2025-11-28 05:11:59 -08:00
Apple
7b9590da01 feat: add Node Directory with multi-node support (TASK 3) 2025-11-28 05:08:55 -08:00
Apple
e95673a6e7 feat: update /agents page with home_node badges and new API 2025-11-28 04:54:27 -08:00
Apple
7e55b72027 fix: show НОДА1/НОДА2 badge instead of node name 2025-11-28 04:46:11 -08:00