From cd57c75e418a2b55bba9bf65acadd3db97047966 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Sun, 15 Mar 2026 19:50:15 +0000 Subject: [PATCH] =?UTF-8?q?chore(orchestrator):=20Phase=207=20complete=20?= =?UTF-8?q?=E2=80=94=20v0.0.8=20verified=20(#154)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jason Woltje Co-committed-by: Jason Woltje --- docs/MISSION-MANIFEST.md | 6 +- docs/TASKS.md | 154 +++++++++++++++---------------- docs/scratchpads/mvp-20260312.md | 23 +++++ 3 files changed, 103 insertions(+), 80 deletions(-) diff --git a/docs/MISSION-MANIFEST.md b/docs/MISSION-MANIFEST.md index f7d3de6..52a05aa 100644 --- a/docs/MISSION-MANIFEST.md +++ b/docs/MISSION-MANIFEST.md @@ -8,8 +8,8 @@ **ID:** mvp-20260312 **Statement:** Build Mosaic Stack v0.1.0 — a self-hosted, multi-user AI agent platform with web dashboard, TUI, remote control, shared memory, mission orchestration, and extensible skill/plugin architecture. All TypeScript. Pi as agent harness. Brain as knowledge layer. Queue as coordination backbone. **Phase:** Execution -**Current Milestone:** Phase 7: Feature Completion (v0.0.8) -**Progress:** 7 / 9 milestones +**Current Milestone:** Phase 8: Polish & Beta (v0.1.0) +**Progress:** 8 / 9 milestones **Status:** active **Last Updated:** 2026-03-15 UTC @@ -38,7 +38,7 @@ | 4 | ms-161 | Phase 4: Memory & Intelligence (v0.0.5) | done | — | — | 2026-03-13 | 2026-03-13 | | 5 | ms-162 | Phase 5: Remote Control (v0.0.6) | done | — | #99 | 2026-03-14 | 2026-03-14 | | 6 | ms-163 | Phase 6: CLI & Tools (v0.0.7) | done | — | #104 | 2026-03-14 | 2026-03-14 | -| 7 | ms-164 | Phase 7: Feature Completion (v0.0.8) | in-progress | — | — | 2026-03-15 | — | +| 7 | ms-164 | Phase 7: Feature Completion (v0.0.8) | done | — | — | 2026-03-15 | 2026-03-15 | | 8 | ms-165 | Phase 8: Polish & Beta (v0.1.0) | not-started | — | — | — | — | ## Deployment diff --git a/docs/TASKS.md b/docs/TASKS.md index d236970..9c49f4f 100644 --- a/docs/TASKS.md +++ b/docs/TASKS.md @@ -2,80 +2,80 @@ > Single-writer: orchestrator only. Workers read but never modify. -| id | status | milestone | description | pr | notes | -| ------ | ----------- | --------- | ------------------------------------------------------------------- | ---- | ------------ | -| P0-001 | done | Phase 0 | Scaffold monorepo | #60 | #1 | -| P0-002 | done | Phase 0 | @mosaic/types — migrate and extend shared types | #65 | #2 | -| P0-003 | done | Phase 0 | @mosaic/db — Drizzle schema and PG connection | #67 | #3 | -| P0-004 | done | Phase 0 | @mosaic/auth — BetterAuth email/password setup | #68 | #4 | -| P0-005 | done | Phase 0 | Docker Compose — PG 17, Valkey 8, SigNoz | #65 | #5 | -| P0-006 | done | Phase 0 | OTEL foundation — OpenTelemetry SDK setup | #65 | #6 | -| P0-007 | done | Phase 0 | CI pipeline — Woodpecker config | #69 | #7 | -| P0-008 | done | Phase 0 | Project docs — AGENTS.md, CLAUDE.md, README | #69 | #8 | -| P0-009 | done | Phase 0 | Verify Phase 0 — CI green, all packages build | #70 | #9 | -| P1-001 | done | Phase 1 | apps/gateway scaffold — NestJS + Fastify adapter | #61 | #10 | -| P1-002 | done | Phase 1 | Auth middleware — BetterAuth session validation | #71 | #11 | -| P1-003 | done | Phase 1 | @mosaic/brain — migrate from v0, PG backend | #71 | #12 | -| P1-004 | done | Phase 1 | @mosaic/queue — migrate from v0 | #71 | #13 | -| P1-005 | done | Phase 1 | Gateway routes — conversations CRUD + messages | #72 | #14 | -| P1-006 | done | Phase 1 | Gateway routes — tasks, projects, missions CRUD | #72 | #15 | -| P1-007 | done | Phase 1 | WebSocket server — chat streaming | #61 | #16 | -| P1-008 | done | Phase 1 | Basic agent dispatch — single provider | #61 | #17 | -| P1-009 | done | Phase 1 | Verify Phase 1 — gateway functional, API tested | #73 | #18 | -| P2-001 | done | Phase 2 | @mosaic/agent — Pi SDK integration + agent pool | #61 | #19 | -| P2-002 | done | Phase 2 | Multi-provider support — Anthropic + Ollama | #74 | #20 | -| P2-003 | done | Phase 2 | Agent routing engine — cost/capability matrix | #75 | #21 | -| P2-004 | done | Phase 2 | Tool registration — brain, queue, memory tools | #76 | #22 | -| P2-005 | done | Phase 2 | @mosaic/coord — migrate from v0, gateway integration | #77 | #23 | -| P2-006 | done | Phase 2 | Agent session management — tmux + monitoring | #78 | #24 | -| P2-007 | done | Phase 2 | Verify Phase 2 — multi-provider routing works | #79 | #25 | -| P3-001 | done | Phase 3 | apps/web scaffold — Next.js 16 + BetterAuth + Tailwind | #82 | #26 | -| P3-002 | done | Phase 3 | Auth pages — login, registration, SSO redirect | #83 | #27 | -| P3-003 | done | Phase 3 | Chat UI — conversations, messages, streaming | #84 | #28 | -| P3-004 | done | Phase 3 | Task management — list view + kanban board | #86 | #29 | -| P3-005 | done | Phase 3 | Project & mission views — dashboard + PRD viewer | #87 | #30 | -| P3-006 | done | Phase 3 | Settings — provider config, profile, integrations | #88 | #31 | -| P3-007 | done | Phase 3 | Admin panel — user management, RBAC | #89 | #32 | -| P3-008 | done | Phase 3 | Verify Phase 3 — web dashboard functional E2E | — | #33 | -| P4-001 | done | Phase 4 | @mosaic/memory — preference + insight stores | — | #34 | -| P4-002 | done | Phase 4 | Semantic search — pgvector embeddings + search API | — | #35 | -| P4-003 | done | Phase 4 | @mosaic/log — log ingest, parsing, tiered storage | — | #36 | -| P4-004 | done | Phase 4 | Summarization pipeline — Haiku-tier LLM + cron | — | #37 | -| P4-005 | done | Phase 4 | Memory integration — inject into agent sessions | — | #38 | -| P4-006 | done | Phase 4 | Skill management — catalog, install, config | — | #39 | -| P4-007 | done | Phase 4 | Verify Phase 4 — memory + log pipeline working | — | #40 | -| P5-001 | done | Phase 5 | Plugin host — gateway plugin loading + channel interface | — | #41 | -| P5-002 | done | Phase 5 | @mosaic/discord-plugin — Discord bot + channel plugin | #61 | #42 | -| P5-003 | done | Phase 5 | @mosaic/telegram-plugin — Telegraf bot + channel plugin | — | #43 | -| P5-004 | done | Phase 5 | SSO — Authentik OIDC adapter end-to-end | — | #44 | -| P5-005 | done | Phase 5 | Verify Phase 5 — Discord + Telegram + SSO working | #99 | #45 | -| P6-001 | done | Phase 6 | @mosaic/cli — unified CLI binary + subcommands | #104 | #46 | -| P6-002 | done | Phase 6 | @mosaic/prdy — migrate PRD wizard from v0 | #101 | #47 | -| P6-003 | done | Phase 6 | @mosaic/quality-rails — migrate scaffolder from v0 | #100 | #48 | -| P6-004 | done | Phase 6 | @mosaic/mosaic — install wizard for v1 | #103 | #49 | -| P6-005 | done | Phase 6 | Pi TUI integration — mosaic tui | #61 | #50 | -| P6-006 | done | Phase 6 | Verify Phase 6 — CLI functional, all subcommands | — | #51 | -| P7-009 | done | Phase 7 | Web chat — WebSocket integration, streaming, conversation switching | #136 | #120 W1 done | -| P7-001 | done | Phase 7 | MCP endpoint hardening — streamable HTTP transport | #137 | #52 W1 done | -| P7-010 | done | Phase 7 | Web conversation management — list, search, rename, delete, archive | #139 | #121 W2 done | -| P7-015 | done | Phase 7 | Agent tool expansion — file ops, git, shell exec, web fetch | #138 | #126 W2 done | -| P7-011 | done | Phase 7 | Web project detail views — missions, tasks, PRDs, dashboards | #140 | #122 W3 done | -| P7-016 | done | Phase 7 | MCP client — gateway connects to external MCP servers as tools | #141 | #127 W3 done | -| P7-012 | in-progress | Phase 7 | Web provider management UI — add, configure, test LLM providers | — | #123 Wave-4 | -| P7-017 | in-progress | Phase 7 | Agent skill invocation — load and execute skills from catalog | — | #128 Wave-4 | -| P7-013 | not-started | Phase 7 | Web settings persistence — profile, preferences save to DB | — | #124 Wave-5 | -| P7-018 | not-started | Phase 7 | CLI model/provider switching — --model, --provider, /model in TUI | — | #129 Wave-5 | -| P7-014 | not-started | Phase 7 | Web admin panel — user CRUD, role assignment, system health | — | #125 Wave-6 | -| P7-019 | not-started | Phase 7 | CLI session management — list, resume, destroy sessions | — | #130 Wave-6 | -| P7-020 | not-started | Phase 7 | Coord DB migration — project-scoped missions, multi-tenant RBAC | — | #131 Wave-7 | -| FIX-02 | not-started | Backlog | TUI agent:end — fix React state updater side-effect | — | #133 Wave-8 | -| FIX-03 | not-started | Backlog | Agent session — cwd sandbox, system prompt, tool restrictions | — | #134 Wave-8 | -| P7-004 | not-started | Phase 7 | E2E test suite — Playwright critical paths | — | #55 Wave-9 | -| P7-006 | not-started | Phase 7 | Documentation — user guide, admin guide, dev guide | — | #57 Wave-9 | -| P7-007 | not-started | Phase 7 | Bare-metal deployment docs + .env.example | — | #58 Wave-9 | -| P7-021 | not-started | Phase 7 | Verify Phase 7 — feature-complete platform E2E | — | #132 Wave-10 | -| P8-001 | not-started | Phase 8 | Additional SSO providers — WorkOS + Keycloak | — | #53 | -| P8-002 | not-started | Phase 8 | Additional LLM providers — Codex, Z.ai, LM Studio, llama.cpp | — | #54 | -| P8-003 | not-started | Phase 8 | Performance optimization | — | #56 | -| P8-004 | not-started | Phase 8 | Beta release gate — v0.1.0 tag | — | #59 | -| FIX-01 | done | Backlog | Call piSession.dispose() in AgentService.destroySession | #78 | #62 | +| id | status | milestone | description | pr | notes | +| ------ | ----------- | --------- | ------------------------------------------------------------------- | ---- | ------------- | +| P0-001 | done | Phase 0 | Scaffold monorepo | #60 | #1 | +| P0-002 | done | Phase 0 | @mosaic/types — migrate and extend shared types | #65 | #2 | +| P0-003 | done | Phase 0 | @mosaic/db — Drizzle schema and PG connection | #67 | #3 | +| P0-004 | done | Phase 0 | @mosaic/auth — BetterAuth email/password setup | #68 | #4 | +| P0-005 | done | Phase 0 | Docker Compose — PG 17, Valkey 8, SigNoz | #65 | #5 | +| P0-006 | done | Phase 0 | OTEL foundation — OpenTelemetry SDK setup | #65 | #6 | +| P0-007 | done | Phase 0 | CI pipeline — Woodpecker config | #69 | #7 | +| P0-008 | done | Phase 0 | Project docs — AGENTS.md, CLAUDE.md, README | #69 | #8 | +| P0-009 | done | Phase 0 | Verify Phase 0 — CI green, all packages build | #70 | #9 | +| P1-001 | done | Phase 1 | apps/gateway scaffold — NestJS + Fastify adapter | #61 | #10 | +| P1-002 | done | Phase 1 | Auth middleware — BetterAuth session validation | #71 | #11 | +| P1-003 | done | Phase 1 | @mosaic/brain — migrate from v0, PG backend | #71 | #12 | +| P1-004 | done | Phase 1 | @mosaic/queue — migrate from v0 | #71 | #13 | +| P1-005 | done | Phase 1 | Gateway routes — conversations CRUD + messages | #72 | #14 | +| P1-006 | done | Phase 1 | Gateway routes — tasks, projects, missions CRUD | #72 | #15 | +| P1-007 | done | Phase 1 | WebSocket server — chat streaming | #61 | #16 | +| P1-008 | done | Phase 1 | Basic agent dispatch — single provider | #61 | #17 | +| P1-009 | done | Phase 1 | Verify Phase 1 — gateway functional, API tested | #73 | #18 | +| P2-001 | done | Phase 2 | @mosaic/agent — Pi SDK integration + agent pool | #61 | #19 | +| P2-002 | done | Phase 2 | Multi-provider support — Anthropic + Ollama | #74 | #20 | +| P2-003 | done | Phase 2 | Agent routing engine — cost/capability matrix | #75 | #21 | +| P2-004 | done | Phase 2 | Tool registration — brain, queue, memory tools | #76 | #22 | +| P2-005 | done | Phase 2 | @mosaic/coord — migrate from v0, gateway integration | #77 | #23 | +| P2-006 | done | Phase 2 | Agent session management — tmux + monitoring | #78 | #24 | +| P2-007 | done | Phase 2 | Verify Phase 2 — multi-provider routing works | #79 | #25 | +| P3-001 | done | Phase 3 | apps/web scaffold — Next.js 16 + BetterAuth + Tailwind | #82 | #26 | +| P3-002 | done | Phase 3 | Auth pages — login, registration, SSO redirect | #83 | #27 | +| P3-003 | done | Phase 3 | Chat UI — conversations, messages, streaming | #84 | #28 | +| P3-004 | done | Phase 3 | Task management — list view + kanban board | #86 | #29 | +| P3-005 | done | Phase 3 | Project & mission views — dashboard + PRD viewer | #87 | #30 | +| P3-006 | done | Phase 3 | Settings — provider config, profile, integrations | #88 | #31 | +| P3-007 | done | Phase 3 | Admin panel — user management, RBAC | #89 | #32 | +| P3-008 | done | Phase 3 | Verify Phase 3 — web dashboard functional E2E | — | #33 | +| P4-001 | done | Phase 4 | @mosaic/memory — preference + insight stores | — | #34 | +| P4-002 | done | Phase 4 | Semantic search — pgvector embeddings + search API | — | #35 | +| P4-003 | done | Phase 4 | @mosaic/log — log ingest, parsing, tiered storage | — | #36 | +| P4-004 | done | Phase 4 | Summarization pipeline — Haiku-tier LLM + cron | — | #37 | +| P4-005 | done | Phase 4 | Memory integration — inject into agent sessions | — | #38 | +| P4-006 | done | Phase 4 | Skill management — catalog, install, config | — | #39 | +| P4-007 | done | Phase 4 | Verify Phase 4 — memory + log pipeline working | — | #40 | +| P5-001 | done | Phase 5 | Plugin host — gateway plugin loading + channel interface | — | #41 | +| P5-002 | done | Phase 5 | @mosaic/discord-plugin — Discord bot + channel plugin | #61 | #42 | +| P5-003 | done | Phase 5 | @mosaic/telegram-plugin — Telegraf bot + channel plugin | — | #43 | +| P5-004 | done | Phase 5 | SSO — Authentik OIDC adapter end-to-end | — | #44 | +| P5-005 | done | Phase 5 | Verify Phase 5 — Discord + Telegram + SSO working | #99 | #45 | +| P6-001 | done | Phase 6 | @mosaic/cli — unified CLI binary + subcommands | #104 | #46 | +| P6-002 | done | Phase 6 | @mosaic/prdy — migrate PRD wizard from v0 | #101 | #47 | +| P6-003 | done | Phase 6 | @mosaic/quality-rails — migrate scaffolder from v0 | #100 | #48 | +| P6-004 | done | Phase 6 | @mosaic/mosaic — install wizard for v1 | #103 | #49 | +| P6-005 | done | Phase 6 | Pi TUI integration — mosaic tui | #61 | #50 | +| P6-006 | done | Phase 6 | Verify Phase 6 — CLI functional, all subcommands | — | #51 | +| P7-009 | done | Phase 7 | Web chat — WebSocket integration, streaming, conversation switching | #136 | #120 W1 done | +| P7-001 | done | Phase 7 | MCP endpoint hardening — streamable HTTP transport | #137 | #52 W1 done | +| P7-010 | done | Phase 7 | Web conversation management — list, search, rename, delete, archive | #139 | #121 W2 done | +| P7-015 | done | Phase 7 | Agent tool expansion — file ops, git, shell exec, web fetch | #138 | #126 W2 done | +| P7-011 | done | Phase 7 | Web project detail views — missions, tasks, PRDs, dashboards | #140 | #122 W3 done | +| P7-016 | done | Phase 7 | MCP client — gateway connects to external MCP servers as tools | #141 | #127 W3 done | +| P7-012 | done | Phase 7 | Web provider management UI — add, configure, test LLM providers | #142 | #123 W4 done | +| P7-017 | done | Phase 7 | Agent skill invocation — load and execute skills from catalog | #143 | #128 W4 done | +| P7-013 | done | Phase 7 | Web settings persistence — profile, preferences save to DB | #145 | #124 W5 done | +| P7-018 | done | Phase 7 | CLI model/provider switching — --model, --provider, /model in TUI | #144 | #129 W5 done | +| P7-014 | done | Phase 7 | Web admin panel — user CRUD, role assignment, system health | #150 | #125 W6 done | +| P7-019 | done | Phase 7 | CLI session management — list, resume, destroy sessions | #146 | #130 W6 done | +| P7-020 | done | Phase 7 | Coord DB migration — project-scoped missions, multi-tenant RBAC | #149 | #131 W7 done | +| FIX-02 | done | Backlog | TUI agent:end — fix React state updater side-effect | #147 | #133 W8 done | +| FIX-03 | done | Backlog | Agent session — cwd sandbox, system prompt, tool restrictions | #148 | #134 W8 done | +| P7-004 | done | Phase 7 | E2E test suite — Playwright critical paths | #152 | #55 W9 done | +| P7-006 | done | Phase 7 | Documentation — user guide, admin guide, dev guide | #151 | #57 W9 done | +| P7-007 | done | Phase 7 | Bare-metal deployment docs + .env.example | #153 | #58 W9 done | +| P7-021 | done | Phase 7 | Verify Phase 7 — feature-complete platform E2E | — | #132 W10 done | +| P8-001 | not-started | Phase 8 | Additional SSO providers — WorkOS + Keycloak | — | #53 | +| P8-002 | not-started | Phase 8 | Additional LLM providers — Codex, Z.ai, LM Studio, llama.cpp | — | #54 | +| P8-003 | not-started | Phase 8 | Performance optimization | — | #56 | +| P8-004 | not-started | Phase 8 | Beta release gate — v0.1.0 tag | — | #59 | +| FIX-01 | done | Backlog | Call piSession.dispose() in AgentService.destroySession | #78 | #62 | diff --git a/docs/scratchpads/mvp-20260312.md b/docs/scratchpads/mvp-20260312.md index b68587c..8b2f723 100644 --- a/docs/scratchpads/mvp-20260312.md +++ b/docs/scratchpads/mvp-20260312.md @@ -199,3 +199,26 @@ User confirmed: start the planning gate. | 8 | FIX-02 TUI state (#133) | FIX-03 Agent sandbox (#134) | | 9 | P7-004 E2E Playwright (#55) | P7-006 Docs (#57) + P7-007 Deploy docs (#58) | | 10 | P7-021 Verify Phase 7 (#132) | — | + +### Session 12 — Phase 7 completion summary + +**All 17 Phase 7 tasks + 2 backlog fixes completed in a single session.** + +PRs merged: #136, #137, #138, #139, #140, #141, #142, #143, #144, #145, #146, #147, #148, #149, #150, #151, #152, #153 +Issues closed: #52, #55, #57, #58, #120-#134 + +**Verification evidence:** + +- Typecheck: 32/32 tasks green +- Lint: 18/18 packages green +- Format: All files clean +- 19 PRs squash-merged to main, all quality gates passed + +**Phase 7 delivered:** + +- Web: functional chat (WS streaming), conversation management, project detail views, provider UI, settings persistence, admin panel +- Agent: 7 new tools (file/git/shell/web), MCP server (14 tools), MCP client (external server bridge), skill invocation +- CLI: model/provider switching, session management +- Infrastructure: coord DB migration, agent sandbox hardening +- Quality: E2E Playwright suite (~35 tests), comprehensive docs (user/admin/dev/deployment) +- Fixes: TUI state updater, agent session sandboxing