Files
stack/docs/ROADMAP.md
Jason Woltje 12abdfe81d feat(#93): implement agent spawn via federation
Implements FED-010: Agent Spawn via Federation feature that enables
spawning and managing Claude agents on remote federated Mosaic Stack
instances via COMMAND message type.

Features:
- Federation agent command types (spawn, status, kill)
- FederationAgentService for handling agent operations
- Integration with orchestrator's agent spawner/lifecycle services
- API endpoints for spawning, querying status, and killing agents
- Full command routing through federation COMMAND infrastructure
- Comprehensive test coverage (12/12 tests passing)

Architecture:
- Hub → Spoke: Spawn agents on remote instances
- Command flow: FederationController → FederationAgentService →
  CommandService → Remote Orchestrator
- Response handling: Remote orchestrator returns agent status/results
- Security: Connection validation, signature verification

Files created:
- apps/api/src/federation/types/federation-agent.types.ts
- apps/api/src/federation/federation-agent.service.ts
- apps/api/src/federation/federation-agent.service.spec.ts

Files modified:
- apps/api/src/federation/command.service.ts (agent command routing)
- apps/api/src/federation/federation.controller.ts (agent endpoints)
- apps/api/src/federation/federation.module.ts (service registration)
- apps/orchestrator/src/api/agents/agents.controller.ts (status endpoint)
- apps/orchestrator/src/api/agents/agents.module.ts (lifecycle integration)

Testing:
- 12/12 tests passing for FederationAgentService
- All command service tests passing
- TypeScript compilation successful
- Linting passed

Refs #93

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-03 14:37:06 -06:00

306 lines
14 KiB
Markdown

# Mosaic Stack Roadmap
**Last Updated:** 2026-01-29
**Authoritative Source:** [Issues & Milestones](https://git.mosaicstack.dev/mosaic/stack/issues)
## Versioning Policy
| Version | Meaning |
| ------- | ------------------------------------------------ |
| `0.0.x` | Active development, breaking changes expected |
| `0.1.0` | **MVP** — First user-testable release |
| `0.x.y` | Pre-stable iteration, API may change with notice |
| `1.0.0` | Stable release, public API contract |
---
## Milestone Overview
```
Timeline (2026)
═══════════════════════════════════════════════════════════════════════════════
Feb Mar Apr May
│ │ │ │
├──M2 ✓ │ │ │
│ MultiTenant │ │ │
│ (0.0.2) DONE │ │ │
│ │ │ │
├──M3─────────┐ │ │ │
│ Features │ │ │ │
│ (0.0.3) │ │ │ │
│ │ │ │ │
├──M4─────────┼────┐ │ │ │
│ MoltBot │ │ │ │ │
│ (0.0.4) │ │ │ │ │
│ │ │ │ │ │
│ │ ├───┼──M5 Knowledge │ │
│ │ │ │ Module (0.0.5) │ │
│ │ │ │ │ │
│ │ │ ├──M6─────────────┐ │ │
│ │ │ │ Orchestration │ │ │
│ │ │ │ (0.0.6) │ │ │
│ │ │ │ │ │ │
│ │ │ │ ├────┼──M7 Federation │
│ │ │ │ │ │ (0.0.7) │
│ │ │ │ │ │ │
│ │ │ │ │ ├──M5 Migration │
│ │ │ │ │ │ (0.1.0 MVP) │
└─────────────┴────┴───┴────────────────┴────┴──────────────────────┘
Legend: ───── Active development window
✓ Complete
```
---
## Milestones Detail
### ✅ M2-MultiTenant (0.0.2) — COMPLETE
**Due:** 2026-02-08 | **Status:** Done
- [x] Workspace model and CRUD
- [x] Team model with membership
- [x] PostgreSQL Row-Level Security (RLS)
- [x] Workspace isolation at database level
- [x] Role-based access (Owner, Admin, Member, Guest)
---
### 🚧 M3-Features (0.0.3)
**Due:** 2026-02-15 | **Status:** In Progress
Core features for daily use:
| Issue | Title | Priority | Status |
| ----- | ----------------------------- | -------- | ------ |
| #15 | Gantt chart component | P0 | Open |
| #16 | Real-time updates (WebSocket) | P0 | Open |
| #17 | Kanban board view | P1 | Open |
| #18 | Advanced filtering and search | P1 | Open |
| #21 | Ollama integration | P1 | Open |
| #37 | Domains model | — | Open |
| #41 | Widget/HUD System | — | Open |
| #82 | Personality Module | P1 | Open |
---
### 🚧 M4-MoltBot (0.0.4)
**Due:** 2026-02-22 | **Status:** In Progress
Agent integration and skills:
| Issue | Title | Priority | Status |
| ----- | ----------------------------- | -------- | ------ |
| #22 | Brain query API endpoint | P0 | Open |
| #23 | mosaic-plugin-brain skill | P0 | Open |
| #24 | mosaic-plugin-calendar skill | P1 | Open |
| #25 | mosaic-plugin-tasks skill | P1 | Open |
| #26 | mosaic-plugin-gantt skill | P2 | Open |
| #27 | Intent classification service | P1 | Open |
| #29 | Cron job configuration | P1 | Open |
| #42 | Jarvis Chat Overlay | — | Open |
---
### 🚧 M5-Knowledge Module (0.0.5)
**Due:** 2026-03-14 | **Status:** In Progress
Wiki-style knowledge management:
| Phase | Issues | Description |
| ----- | ------ | ------------------------------- |
| 1 | — | Core CRUD (DONE) |
| 2 | #59-64 | Wiki-style linking |
| 3 | #65-70 | Full-text + semantic search |
| 4 | #71-74 | Graph visualization |
| 5 | #75-80 | History, import/export, caching |
**EPIC:** #81
---
### 📋 M6-AgentOrchestration (0.0.6)
**Due:** 2026-03-28 | **Status:** Planned
Persistent task management and autonomous agent coordination:
| Phase | Issues | Description |
| ----- | -------------- | ---------------------------------------- |
| 1 | #96, #97 | Database schema, Task CRUD API |
| 2 | #98, #99, #102 | Valkey, Coordinator, Gateway integration |
| 3 | #100 | Failure recovery, checkpoints |
| 4 | #101 | Task progress UI |
| 5 | — | Advanced (cost tracking, multi-region) |
**EPIC:** #95
**Design Doc:** `docs/design/agent-orchestration.md`
---
### 📋 M7-Federation (0.0.7)
**Due:** 2026-04-15 | **Status:** Planned
Multi-instance federation for work/personal separation:
| Phase | Issues | Description |
| ----- | ------------- | ------------------------------------------- |
| 1 | #84, #85 | Instance identity, CONNECT/DISCONNECT |
| 2 | #86, #87 | Authentik integration, identity linking |
| 3 | #88, #89, #90 | QUERY, COMMAND, EVENT protocol |
| 4 | #91, #92 | Connection manager UI, aggregated dashboard |
| 5 | #93, #94 | Agent federation, spoke configuration |
| 6 | — | Enterprise features |
**EPIC:** #83
**Design Doc:** `docs/design/federation-architecture.md`
---
### 🎯 M5-Migration (0.1.0 MVP)
**Due:** 2026-04-01 | **Status:** Planned
Production readiness and migration from jarvis-brain:
| Issue | Title | Priority |
| ----- | ------------------------------------------ | -------- |
| #30 | Migration scripts from jarvis-brain | P0 |
| #31 | Data validation and integrity checks | P0 |
| #32 | Parallel operation testing | P1 |
| #33 | Performance optimization | P1 |
| #34 | Documentation (SETUP.md, CONFIGURATION.md) | P1 |
| #35 | Docker Compose customization guide | P1 |
---
## Parallel Execution Strategy
Work streams that can run in parallel:
```
┌─────────────────────────────────────────────────────────────────────────┐
│ PARALLEL WORK STREAMS │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Stream A: Core Features (M3) │
│ ├── Gantt, Kanban, WebSocket, Domains │
│ └── Can proceed independently │
│ │
│ Stream B: Agent Skills (M4) │
│ ├── Brain API, plugin-brain, plugin-calendar, plugin-tasks │
│ └── Depends on: Core APIs from M3 │
│ │
│ Stream C: Knowledge Module (M5-Knowledge) │
│ ├── Wiki linking, search, graph viz │
│ └── Independent module, can parallel with all │
│ │
│ Stream D: Agent Orchestration (M6) │
│ ├── Task schema, Valkey, Coordinator │
│ └── Depends on: Base agent model (exists) │
│ │
│ Stream E: Federation (M7) │
│ ├── Instance identity, protocol, Authentik │
│ └── Depends on: RLS (done), Agent Orchestration (for agent federation) │
│ │
└─────────────────────────────────────────────────────────────────────────┘
```
**Recommended parallelization:**
| Sprint | Stream A | Stream B | Stream C | Stream D | Stream E |
| -------- | ------------- | --------- | ------------ | ------------- | ------------ |
| Feb W1-2 | M3 P0 | — | KNOW Phase 2 | ORCH #96, #97 | — |
| Feb W3-4 | M3 P1 | M4 P0 | KNOW Phase 2 | ORCH #98, #99 | FED #84, #85 |
| Mar W1-2 | M3 finish | M4 P1 | KNOW Phase 3 | ORCH #102 | FED #86, #87 |
| Mar W3-4 | — | M4 finish | KNOW Phase 4 | ORCH #100 | FED #88, #89 |
| Apr W1-2 | MVP prep | — | KNOW Phase 5 | ORCH #101 | FED #91, #92 |
| Apr W3-4 | **0.1.0 MVP** | — | — | — | FED #93, #94 |
---
## Dependencies Graph
```
┌─────────────────┐
│ M2-MultiTenant │
│ (DONE) │
└────────┬────────┘
┌──────────────────┼──────────────────┐
│ │ │
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ M3-Features │ │ M5-Knowledge│ │ M6-Orchestr │
└──────┬──────┘ └─────────────┘ └──────┬──────┘
│ │
▼ │
┌─────────────┐ │
│ M4-MoltBot │ │
└──────┬──────┘ │
│ │
│ ┌─────────────────────────┘
│ │
▼ ▼
┌─────────────────────────┐
│ M7-Federation │
│ (Agent Federation │
│ depends on M6) │
└───────────┬─────────────┘
┌─────────────────────────┐
│ M5-Migration (MVP) │
│ 0.1.0 │
└─────────────────────────┘
```
---
## Issue Labels
| Label | Meaning |
| ------------------ | ------------------------------------- |
| `p0` | Critical path, must complete |
| `p1` | Important, should complete |
| `p2` | Nice to have |
| `phase-N` | Implementation phase within milestone |
| `api` | Backend API work |
| `frontend` | Web UI work |
| `database` | Schema/migration work |
| `orchestration` | Agent orchestration related |
| `federation` | Federation related |
| `knowledge-module` | Knowledge module related |
---
## How to Use This Roadmap
1. **Check milestones** for high-level progress
2. **Check issues** for detailed task status
3. **Use labels** to filter by priority or area
4. **Dependencies** show what can be parallelized
5. **Design docs** provide implementation details
**Quick links:**
- [All Open Issues](https://git.mosaicstack.dev/mosaic/stack/issues?state=open)
- [Milestones](https://git.mosaicstack.dev/mosaic/stack/milestones)
- [Design Docs](./design/)
---
## Changelog
| Date | Change |
| ---------- | ---------------------------------------------------------------- |
| 2026-01-29 | Added M6-AgentOrchestration, M7-Federation milestones and issues |
| 2026-01-29 | Created unified roadmap document |
| 2026-01-28 | M2-MultiTenant completed |