todos.md 2.8 KB

Agent Lab MVP Todos

Workflow

  • Main session owns this file and evaluates progress after each todo.
  • Work on one todo at a time: write its plan, execute it, verify it, then update this file.
  • Do not plan all implementation details upfront. Later todos may change after each evaluation.
  • Detailed plans live beside this file as docs/plans/todo-N-*.md.
  • Status values: pending, in_progress, done, blocked.

Current State

  • Branch: codex/agent-lab-mvp.
  • Repo started with only README.md, LICENSE, and .gitignore.
  • Existing uncommitted setup from earlier false start: pyproject.toml, uv.lock, and tests under tests/.
  • Temporary browser companion files exist under .superpowers/ and should not become product code.

Todos

ID Status Plan Goal Verification
1 done docs/plans/todo-1-project-foundation.md Establish uv/FastAPI project skeleton, DDD package layout, and core failing tests for parser, event agent, and runtime routing. uv run pytest fails only because implementation is missing, not because tests or imports are malformed.
2 done docs/plans/todo-2-domain-runtime.md Implement domain models, OpenAI Chat Completions compatible stream parsing, EventAgent tools, and the direct async runtime loop. Core tests pass with mocked ChatAgent client.
3 done docs/plans/todo-3-websocket-api.md Add FastAPI config, HTTP routes, WebSocket protocol, static debug page, and assistant transcript persistence for multi-turn LLM calls. WebSocket contract tests pass; app imports successfully.
4 done docs/plans/todo-4-real-llm-smoke.md Document env-based real LLM run flow, add a lightweight manual smoke helper, and make sure settings names are clear. App starts with env-based config; docs show exact uv commands and required env vars.
5 done docs/plans/todo-5-tool-call-history.md Harden Chat Completions history so assistant tool calls and tool replies are sent in provider-compatible order. Tests prove the next model call includes assistant tool_calls before tool replies.
6 done docs/plans/todo-6-cleanup-closeout.md Clean temporary/generated files, update contributor docs, and run final verification. Git status contains only intended source/docs files; uv run pytest passes.
7 done docs/plans/todo-7-provider-compatibility.md Fix review findings for real Chat Completions compatible providers: default model fallback, role-aware message serialization, and configurable usage streaming. Tests prove provider payload shape and full suite passes.
8 done docs/plans/todo-8-tool-pre-message-guard.md Prevent manually configured pre-messages from producing invalid provider tool payloads without tool_call_id. Tests prove invalid tool pre-messages are rejected and UI no longer exposes tool role.