Separate architect and planner roles #46

Closed
opened 2026-09-25 00:21:12 +00:00 by dev-agent · 1 comment
Collaborator

Filed for later, when there's a reason to spend differently on the two kinds of planning.

Why

Architecture planning is rare and high-stakes, and may justify the top frontier tier (e.g. Fable). Milestone planning is frequent, and a cheaper model (e.g. Opus) may be good enough. Today both use one planner role.

Work

  • A new architect role in the role mapping (A11), alongside planner, in the agent config.
  • LLMPlanningAgent resolves architect for the arch gate and planner for milestone-N gates. It already knows which gate it's planning for.
  • Config validation, startup model discovery and require_limits cover the new role like the others. The pinned mapping at task start (A11) records both.
  • Spec A11 lists the new role.
  • Tests: each gate resolves its role, and the pinned mapping includes architect.

Not needed

No LiteLLM changes beyond describing both models, which it would do anyway.

Related

Planner benchmarking is deferred in the benchmark work. When it's built, it's what decides which model fits each role.

Filed for later, when there's a reason to spend differently on the two kinds of planning. ### Why Architecture planning is rare and high-stakes, and may justify the top frontier tier (e.g. Fable). Milestone planning is frequent, and a cheaper model (e.g. Opus) may be good enough. Today both use one `planner` role. ### Work - A new `architect` role in the role mapping (A11), alongside `planner`, in the agent config. - `LLMPlanningAgent` resolves `architect` for the `arch` gate and `planner` for `milestone-N` gates. It already knows which gate it's planning for. - Config validation, startup model discovery and `require_limits` cover the new role like the others. The pinned mapping at task start (A11) records both. - Spec A11 lists the new role. - Tests: each gate resolves its role, and the pinned mapping includes `architect`. ### Not needed No LiteLLM changes beyond describing both models, which it would do anyway. ### Related Planner benchmarking is deferred in the benchmark work. When it's built, it's what decides which model fits each role.
Author
Collaborator

Superseded by the Development Plan (#84, merged): the architecture has one local driver with frontier helpers (docs/Architecture.md L9), not separate architect and planner roles. It is covered by M2.3 in docs/Development-Plan.md, which designs the new conversational loop that replaces control.py. Fixing it in control.py would be thrown away when that loop retires.

Superseded by the Development Plan (#84, merged): the architecture has one local driver with frontier helpers (docs/Architecture.md L9), not separate architect and planner roles. It is covered by **M2.3** in `docs/Development-Plan.md`, which designs the new conversational loop that replaces `control.py`. Fixing it in `control.py` would be thrown away when that loop retires.
Sign in to join this conversation.