Make agent coordination correct — as a platform primitive Coder is the first consumer of, NOT a refactor of Coder's hardcoded internals. Design: docs/coordination-primitives.md. Companion to agent-platform-strategy.md + connector-manifest.md (#143).
Problem (verified): the Overseer (drive_claude) and send_to_cli are fire-and-forget one-shots — no follow-through, no typed task/status, three overlapping drive-paths, and the console Loop is client-driven (dies when the tab closes) while the durable Pilot (CodingSessionWorkflow) overlaps it.
What stays (best practice, keep): Engine=executor / brain=decider; deterministic target routing (repo → one active session → live node); per-instance isolation; declarative consent-gated tools. This is not a rewrite — only the coordination policy on top changes.
Principle: delegate at the right abstraction, through a durable handoff. Commands → Engines; goals → autonomous workers (Pilot, later another agent) that own loop/retry/escalate; the coordinator delegates goals and tracks status.
We build ONE thing now (the fix as the primitive) and defer the generalizations until they have a proven primitive and/or a real second consumer — avoiding both "polish the hardcoded thing" and "build the framework too early."
Make agent coordination correct — as a platform primitive Coder is the first consumer of, NOT a refactor of Coder's hardcoded internals. Design:
docs/coordination-primitives.md. Companion toagent-platform-strategy.md+connector-manifest.md(#143).Problem (verified): the Overseer (
drive_claude) andsend_to_cliare fire-and-forget one-shots — no follow-through, no typed task/status, three overlapping drive-paths, and the console Loop is client-driven (dies when the tab closes) while the durable Pilot (CodingSessionWorkflow) overlaps it.What stays (best practice, keep): Engine=executor / brain=decider; deterministic target routing (repo → one active session → live node); per-instance isolation; declarative consent-gated tools. This is not a rewrite — only the coordination policy on top changes.
Principle: delegate at the right abstraction, through a durable handoff. Commands → Engines; goals → autonomous workers (Pilot, later another agent) that own loop/retry/escalate; the coordinator delegates goals and tracks status.
We build ONE thing now (the fix as the primitive) and defer the generalizations until they have a proven primitive and/or a real second consumer — avoiding both "polish the hardcoded thing" and "build the framework too early."
delegateprimitive ([coordination][deferred] First-class delegate(target, goal) registry primitive #156) · typed task/handoff model ([coordination][deferred] Typed task/handoff model (owner/status/result) #157) · converge Loop into the durable Pilot ([coordination] Platform-provided durable agent loop — the Loop is an agent-level primitive, not a browser poll #158) · cross-agent delegation ([coordination][deferred] Cross-agent delegation (delegate a goal to another instance's brain) #159) · retire theworkflowenum ([coordination][deferred] Retire the workflow closed enum → declarative behavior #160).