diff --git a/TODO.md b/TODO.md index a83106f..ac4c489 100644 --- a/TODO.md +++ b/TODO.md @@ -1,21 +1,36 @@ -# TODO.md — go-agentic Task Queue +# TODO.md -- go-agentic -## Phase 1: Post-Split Hardening +## Phase 1: Test Coverage -- [ ] **Verify tests pass standalone** — Run `go test ./...` after split. Confirm all 5 test files pass. -- [ ] **Review allowance model** — Current allowance tracks per-workspace quotas. Verify this aligns with the multi-tenant model in core/php-tenant. -- [ ] **Audit client.go HTTP calls** — Check timeouts, retries, error handling for AI provider API calls. +- [ ] Verify all 5 test files pass standalone after split (`go test ./...`) +- [ ] Add integration test for full task lifecycle: claim -> process -> complete +- [ ] Add edge-case tests for allowance exhaustion mid-task -## Phase 2: Integration +## Phase 2: Allowance Persistence -- [ ] **Context builder improvements** — context.go builds prompts from workspace state. Add support for including CLAUDE.md, TODO.md, FINDINGS.md from the current project automatically. -- [ ] **Multi-model allowance** — Track separate quotas per model (Opus, Sonnet, Haiku) not just per workspace. -- [ ] **Streaming completions** — client.go should support SSE/streaming responses from AI providers. +- [ ] MemoryStore is in-memory only -- state lost on restart +- [ ] Add Redis backend for `AllowanceStore` interface (multi-process safe) +- [ ] Add SQLite backend for `AllowanceStore` interface (single-node fallback) +- [ ] Config already supports YAML -- wire backend selection into config loader + +## Phase 3: Multi-Agent Coordination + +- [ ] Currently single-agent -- only one Claude subprocess at a time +- [ ] Add agent discovery (register capabilities, heartbeat) +- [ ] Add task routing based on agent capabilities and current load +- [ ] Add load balancing across multiple agent instances + +## Phase 4: CLI Integration + +- [ ] `client.go` talks to REST API -- wire into `core agent` CLI command group +- [ ] `core agent status` -- show running agents, task queue depth, allowance remaining +- [ ] `core agent dispatch ` -- submit task to queue from CLI +- [ ] `core agent logs ` -- stream task output via WebSocket --- ## Workflow 1. Virgil in core/go writes tasks here after research -2. This repo's session picks up tasks in phase order +2. This repo's dedicated session picks up tasks in phase order 3. Mark `[x]` when done, note commit hash