# Mission Manifest — Harness Foundation > Persistent document tracking full mission scope, status, and session history. > Updated by the orchestrator at each phase transition and milestone completion. ## Mission **ID:** harness-20260321 **Statement:** Transform Mosaic Stack from a functional demo into a real multi-provider, task-routing AI harness. Persist all conversations, integrate frontier LLM providers (Anthropic, OpenAI, OpenRouter, Z.ai, Ollama), build granular task-aware agent routing, harden agent sessions, replace cron with BullMQ, and design the channel protocol for future Matrix/remote integration. **Phase:** Execution **Current Milestone:** M3: Provider Integration **Progress:** 2 / 7 milestones **Status:** active **Last Updated:** 2026-03-21 UTC ## Success Criteria - [ ] AC-1: Send messages in TUI → restart TUI → resume conversation → agent has full history and context - [ ] AC-2: Route a coding task to Claude Opus 4.6, a simple question to Haiku, a summarization to GLM-5 — all via granular routing rules - [ ] AC-3: Two users exist, User A's memory searches never return User B's data - [ ] AC-4: `/model claude-sonnet-4-6` in TUI switches the active model for subsequent messages - [ ] AC-5: `/agent coding-agent` in TUI switches to a different agent with different system prompt and tools - [ ] AC-6: BullMQ jobs execute on schedule, failures retry with backoff, admin can inspect via `/api/admin/jobs` - [ ] AC-7: Channel protocol document exists with Matrix integration points defined, reviewed, and approved - [ ] AC-8: Embeddings run on Ollama local models (no external API dependency for vector operations) - [ ] AC-9: All five providers (Anthropic, OpenAI, OpenRouter, Z.ai, Ollama) connect, list models, and complete chat requests - [ ] AC-10: Routing transparency — TUI displays which model was selected and the routing reason for each response ## Milestones | # | ID | Name | Status | Branch | Issue | Started | Completed | | --- | ------ | ---------------------------------- | ----------- | ------ | --------- | ---------- | ---------- | | 1 | ms-166 | Conversation Persistence & Context | done | — | #224–#231 | 2026-03-21 | 2026-03-21 | | 2 | ms-167 | Security & Isolation | done | — | #232–#239 | 2026-03-21 | 2026-03-21 | | 3 | ms-168 | Provider Integration | in-progress | — | #240–#251 | 2026-03-21 | — | | 4 | ms-169 | Agent Routing Engine | not-started | — | #252–#264 | — | — | | 5 | ms-170 | Agent Session Hardening | not-started | — | #265–#272 | — | — | | 6 | ms-171 | Job Queue Foundation | not-started | — | #273–#280 | — | — | | 7 | ms-172 | Channel Protocol Design | not-started | — | #281–#288 | — | — | ## Deployment | Target | URL | Method | | -------------------- | --------- | -------------------------- | | Docker Compose (dev) | localhost | docker compose up | | Production | TBD | Docker Swarm via Portainer | ## Coordination - **Primary Agent:** claude-opus-4-6 - **Sibling Agents:** codex (for pure coding tasks), sonnet (for review/standard work) - **Shared Contracts:** docs/PRD-Harness_Foundation.md, docs/TASKS.md ## Token Budget | Metric | Value | | ------ | ------ | | Budget | — | | Used | 0 | | Mode | normal | ## Session History | Session | Runtime | Started | Duration | Ended Reason | Last Task | | ------- | --------------- | ---------- | -------- | ------------ | ------------- | | 1 | claude-opus-4-6 | 2026-03-21 | — | — | Planning gate | ## Scratchpad Path: `docs/scratchpads/harness-20260321.md`