diff --git a/.mosaic/orchestrator/mission.json b/.mosaic/orchestrator/mission.json index ae9e699..1c88def 100644 --- a/.mosaic/orchestrator/mission.json +++ b/.mosaic/orchestrator/mission.json @@ -1,56 +1,56 @@ { "schema_version": 1, - "mission_id": "ms21-multi-tenant-rbac-data-migration-20260228", - "name": "MS21 Multi-Tenant RBAC Data Migration", - "description": "Build multi-tenant user/workspace/team management, break-glass auth, RBAC UI enforcement, and migrate jarvis-brain data into Mosaic Stack", + "mission_id": "ms22-p2-named-agent-fleet-20260304", + "name": "MS22-P2 Named Agent Fleet", + "description": "", "project_path": "/home/jwoltje/src/mosaic-stack", - "created_at": "2026-02-28T17:10:22Z", + "created_at": "2026-03-05T01:53:28Z", "status": "active", - "task_prefix": "MS21", - "quality_gates": "pnpm lint && pnpm build && pnpm test", - "milestone_version": "0.0.21", + "task_prefix": "", + "quality_gates": "", + "milestone_version": "0.0.1", "milestones": [ { "id": "phase-1", - "name": "Schema and Admin API", + "name": "Schema+Seed", "status": "pending", - "branch": "schema-and-admin-api", + "branch": "schema-seed", "issue_ref": "", "started_at": "", "completed_at": "" }, { "id": "phase-2", - "name": "Break-Glass Authentication", + "name": "Admin CRUD", "status": "pending", - "branch": "break-glass-authentication", + "branch": "admin-crud", "issue_ref": "", "started_at": "", "completed_at": "" }, { "id": "phase-3", - "name": "Data Migration", + "name": "User CRUD", "status": "pending", - "branch": "data-migration", + "branch": "user-crud", "issue_ref": "", "started_at": "", "completed_at": "" }, { "id": "phase-4", - "name": "Admin UI", + "name": "Agent Routing", "status": "pending", - "branch": "admin-ui", + "branch": "agent-routing", "issue_ref": "", "started_at": "", "completed_at": "" }, { "id": "phase-5", - "name": "RBAC UI Enforcement", + "name": "Discord+UI", "status": "pending", - "branch": "rbac-ui-enforcement", + "branch": "discord-ui", "issue_ref": "", "started_at": "", "completed_at": "" @@ -65,26 +65,5 @@ "completed_at": "" } ], - "sessions": [ - { - "session_id": "sess-001", - "runtime": "unknown", - "started_at": "2026-02-28T17:48:51Z", - "ended_at": "", - "ended_reason": "", - "milestone_at_end": "", - "tasks_completed": [], - "last_task_id": "" - }, - { - "session_id": "sess-002", - "runtime": "unknown", - "started_at": "2026-02-28T20:30:13Z", - "ended_at": "2026-03-04T13:45:06Z", - "ended_reason": "completed", - "milestone_at_end": "", - "tasks_completed": [], - "last_task_id": "" - } - ] + "sessions": [] } diff --git a/docs/MISSION-MANIFEST.md b/docs/MISSION-MANIFEST.md index ed22e85..1860eef 100644 --- a/docs/MISSION-MANIFEST.md +++ b/docs/MISSION-MANIFEST.md @@ -1,52 +1,67 @@ -# Mission Manifest — MS21 Multi-Tenant RBAC Data Migration +# Mission Manifest — MS22-P2 Named Agent Fleet > Persistent document tracking full mission scope, status, and session history. > Updated by the orchestrator at each phase transition and milestone completion. ## Mission -**ID:** ms21-multi-tenant-rbac-data-migration-20260228 -**Statement:** Build multi-tenant user/workspace/team management, break-glass auth, RBAC UI enforcement, and migrate jarvis-brain data into Mosaic Stack -**Phase:** Intake -**Current Milestone:** — -**Progress:** 0 / 6 milestones -**Status:** active -**Last Updated:** 2026-02-28 17:10 UTC +**ID:** ms22-p2-named-agent-fleet-20260304 +**Statement:** Implement named agent fleet (jarvis, builder, medic) with per-agent personalities, model assignments, Discord channel routing, and WebUI selector. +**PRD:** `docs/PRD-MS22-P2-AGENT-FLEET.md` +**Phase:** Execution +**Status:** in-progress +**Last Updated:** 2026-03-04 ## Success Criteria - +1. AgentTemplate and UserAgent tables exist and are seeded with jarvis/builder/medic +2. Admin CRUD endpoints at `/admin/agent-templates` work and are guarded +3. User agent CRUD endpoints allow per-user agent customization +4. Chat proxy routes messages to correct agent by name +5. Discord channel → agent routing maps #jarvis/#builder/#medic-alerts +6. WebUI shows agent selector and connects to correct agent +7. All CI gates green ## Milestones -| # | ID | Name | Status | Branch | Issue | Started | Completed | -| --- | ------- | -------------------------- | ------- | ------ | ----- | ------- | --------- | -| 1 | phase-1 | Schema and Admin API | pending | — | — | — | — | -| 2 | phase-2 | Break-Glass Authentication | pending | — | — | — | — | -| 3 | phase-3 | Data Migration | pending | — | — | — | — | -| 4 | phase-4 | Admin UI | pending | — | — | — | — | -| 5 | phase-5 | RBAC UI Enforcement | pending | — | — | — | — | -| 6 | phase-6 | Verification | pending | — | — | — | — | +| # | ID | Name | Status | Tasks | Notes | +| --- | ------------- | ------------- | ---------- | -------------- | --------------------- | +| 1 | schema-seed | Schema+Seed | ✅ done | P2-001, P2-002 | PRs #675, #677 merged | +| 2 | admin-crud | Admin CRUD | ✅ done | P2-003 | PR #678 merged | +| 3 | user-crud | User CRUD | 🔄 next | P2-004 | Depends on M2 | +| 4 | agent-routing | Agent Routing | ⬜ pending | P2-005, P2-006 | Depends on M3 | +| 5 | discord-ui | Discord+UI | ⬜ pending | P2-007, P2-008 | Depends on M4 | +| 6 | verification | Verification | ⬜ pending | P2-009, P2-010 | Final gate | -## Deployment +## Task Summary -| Target | URL | Method | -| ------ | --- | ------ | -| — | — | — | +See `docs/TASKS.md` — MS22 Phase 2 section for full task details. + +| Task | Status | PR | Notes | +| ----------------------- | -------------- | ---- | ------------------------------ | +| P2-001 Schema | ✅ done | #675 | AgentTemplate + UserAgent | +| P2-002 Seed | ✅ done | #677 | jarvis/builder/medic templates | +| P2-003 Admin CRUD | ✅ done | #678 | /admin/agent-templates | +| P2-004 User CRUD | ⬜ not-started | — | | +| P2-005 Status endpoints | ⬜ not-started | — | | +| P2-006 Chat routing | ⬜ not-started | — | | +| P2-007 Discord routing | ⬜ not-started | — | | +| P2-008 WebUI selector | ⬜ not-started | — | | +| P2-009 Unit tests | ⬜ not-started | — | | +| P2-010 E2E verification | ⬜ not-started | — | | ## Token Budget -| Metric | Value | -| ------ | ------ | -| Budget | — | -| Used | 0 | -| Mode | normal | +| Phase | Est | Used | +| ----------------- | -------- | -------------------- | +| Schema+Seed+CRUD | 30K | ~10K (done directly) | +| User CRUD+Routing | 40K | — | +| Discord+UI | 30K | — | +| Verification | 10K | — | +| **Total** | **110K** | **~10K** | -## Session History +## Session Log -| Session | Runtime | Started | Duration | Ended Reason | Last Task | -| ------- | ------- | ------- | -------- | ------------ | --------- | - -## Scratchpad - -Path: `docs/scratchpads/ms21-multi-tenant-rbac-data-migration-20260228.md` +| Date | Work Done | +| ---------- | ------------------------------------------------------------------ | +| 2026-03-04 | P2-001..003 shipped; CI fix; postgres rebuilt; mission initialized | diff --git a/docs/TASKS.md b/docs/TASKS.md index 5d3d55c..c22773d 100644 --- a/docs/TASKS.md +++ b/docs/TASKS.md @@ -94,15 +94,15 @@ Design doc: `docs/design/MS22-DB-CENTRIC-ARCHITECTURE.md` PRD: `docs/PRD-MS22-P2-AGENT-FLEET.md` -| Task ID | Status | Phase | Description | Issue | Scope | Branch | Depends On | Blocks | Assigned Worker | Started | Completed | Est Tokens | Act Tokens | Notes | -| ----------- | ----------- | -------- | -------------------------------------------- | -------- | ----- | --------------------------- | ------------- | ------------- | --------------- | ------- | --------- | ---------- | ---------- | ----- | -| MS22-P2-001 | not-started | p2-fleet | Prisma schema: AgentTemplate, UserAgent | TASKS:P2 | api | feat/ms22-p2-agent-schema | MS22-P1a | P2-002,P2-003 | — | — | — | 10K | — | | -| MS22-P2-002 | not-started | p2-fleet | Seed default agents (jarvis, builder, medic) | TASKS:P2 | api | feat/ms22-p2-agent-seed | P2-001 | P2-004 | — | — | — | 5K | — | | -| MS22-P2-003 | not-started | p2-fleet | Agent template CRUD endpoints (admin) | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-001 | P2-005 | — | — | — | 15K | — | | -| MS22-P2-004 | not-started | p2-fleet | User agent CRUD endpoints | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-002,P2-003 | P2-006 | — | — | — | 15K | — | | -| MS22-P2-005 | not-started | p2-fleet | Agent status endpoints | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-003 | P2-008 | — | — | — | 10K | — | | -| MS22-P2-006 | not-started | p2-fleet | Agent chat routing (select agent by name) | TASKS:P2 | api | feat/ms22-p2-agent-routing | P2-004 | P2-007 | — | — | — | 15K | — | | -| MS22-P2-007 | not-started | p2-fleet | Discord channel → agent routing | TASKS:P2 | api | feat/ms22-p2-discord-router | P2-006 | P2-009 | — | — | — | 15K | — | | -| MS22-P2-008 | not-started | p2-fleet | Agent list/selector UI in WebUI | TASKS:P2 | web | feat/ms22-p2-agent-ui | P2-005 | — | — | — | — | 15K | — | | -| MS22-P2-009 | not-started | p2-fleet | Unit tests for agent services | TASKS:P2 | api | test/ms22-p2-agent-tests | P2-007 | P2-010 | — | — | — | 15K | — | | -| MS22-P2-010 | not-started | p2-fleet | E2E verification: Discord → agent → response | TASKS:P2 | stack | — | P2-009 | — | — | — | — | 10K | — | | +| Task ID | Status | Phase | Description | Issue | Scope | Branch | Depends On | Blocks | Assigned Worker | Started | Completed | Est Tokens | Act Tokens | Notes | +| ----------- | ----------- | -------- | -------------------------------------------- | -------- | ----- | --------------------------- | ------------- | ------------- | --------------- | ---------- | ---------- | ---------- | ---------- | -------------- | +| MS22-P2-001 | done | p2-fleet | Prisma schema: AgentTemplate, UserAgent | TASKS:P2 | api | feat/ms22-p2-agent-schema | MS22-P1a | P2-002,P2-003 | orchestrator | 2026-03-04 | 2026-03-04 | 10K | 3K | PR #675 merged | +| MS22-P2-002 | not-started | p2-fleet | Seed default agents (jarvis, builder, medic) | TASKS:P2 | api | feat/ms22-p2-agent-seed | P2-001 | P2-004 | — | — | — | 5K | — | | +| MS22-P2-003 | not-started | p2-fleet | Agent template CRUD endpoints (admin) | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-001 | P2-005 | — | — | — | 15K | — | | +| MS22-P2-004 | not-started | p2-fleet | User agent CRUD endpoints | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-002,P2-003 | P2-006 | — | — | — | 15K | — | | +| MS22-P2-005 | not-started | p2-fleet | Agent status endpoints | TASKS:P2 | api | feat/ms22-p2-agent-api | P2-003 | P2-008 | — | — | — | 10K | — | | +| MS22-P2-006 | not-started | p2-fleet | Agent chat routing (select agent by name) | TASKS:P2 | api | feat/ms22-p2-agent-routing | P2-004 | P2-007 | — | — | — | 15K | — | | +| MS22-P2-007 | not-started | p2-fleet | Discord channel → agent routing | TASKS:P2 | api | feat/ms22-p2-discord-router | P2-006 | P2-009 | — | — | — | 15K | — | | +| MS22-P2-008 | not-started | p2-fleet | Agent list/selector UI in WebUI | TASKS:P2 | web | feat/ms22-p2-agent-ui | P2-005 | — | — | — | — | 15K | — | | +| MS22-P2-009 | not-started | p2-fleet | Unit tests for agent services | TASKS:P2 | api | test/ms22-p2-agent-tests | P2-007 | P2-010 | — | — | — | 15K | — | | +| MS22-P2-010 | not-started | p2-fleet | E2E verification: Discord → agent → response | TASKS:P2 | stack | — | P2-009 | — | — | — | — | 10K | — | |