10. Phased roadmap
| Phase | Deliverables | Acceptance criteria | Effort |
|---|---|---|---|
| 0. Foundations and gates | Workspace, Loco app skeleton, migration crate, three environment files, deny.toml, npm and image license checks, config_validate in CI, ADRs | CI fails on a GPL, ELv2 or SSPL dependency fixture and on a YAML typo. All images have SBOMs | 2–2.5 wk |
| 1. Walking skeleton | agui crate, AG-UI controller, CopilotKit route and chat, vLLM chat through rig 0.46 | A chat message streams end to end. AG-UI event-sequence snapshot test passes | 1.5–2.5 wk |
| 1b. YAML engine | Definition structs, loader, validator, compiler, seven built-in task kinds, JSON Schema export | A workflow added as one YAML file appears in /api/agents after restart. Unknown key, unknown kind, dangling reference or disallowed model license stops boot and names the file | 2–3 wk |
| 2. Documents and retrieval | Docling client, ingestion on Loco workers, embeddings, pgvector index | A 50-page PDF parses in under 60 s on GPU. Vendor search top-5 recall ≥ 0.9 on the fixture | 2.5 wk |
| 3. Invoice workflow with approval | invoice_v1.yaml, approvals, interrupt and resume, audit | Kill the server while it waits for approval, restart, resume: the bill posts exactly once. Field accuracy ≥ 95% on evals. Changing the approval threshold needs only a YAML edit | 4–5 wk |
| 4. Integrations | Connector adapters, webhook, one real accounting adapter, MCP connector, optional Activepieces CE | Idempotent post verified by replay. A connector is swapped by editing its YAML kind | 3–4 wk |
| 5. Observability, evals, hardening | GenAI spans to Collector and Jaeger, optional Opik, roles, rate limits, PII redaction, load test | p95 run start under 300 ms. Traces cover every task. Security review passed | 3–4 wk |
| 6. Multi-tenant and second workflow | Tenant overrides, row-level security everywhere, collections_v1.yaml | Cross-tenant access test fails closed. The collections workflow ships with no new Rust beyond the llm.generate and notify.email kinds | 2–3 wk |
Core work is about 20–27 engineer-weeks. With a 15–20% buffer the total is about 23–32 weeks.