agent-team: autonomous tasks park at the review→build handoff (tick-resume skips plain pending-next-node threads) #67

Closed
opened 2026-06-24 23:27:10 +00:00 by amoussa1229 · 1 comment
amoussa1229 commented 2026-06-24 23:27:10 +00:00 (Migrated from github.com)

Summary

A task that clears the whole pipeline autonomously (no clarifier question, plan auto-approved through the review loop) parks at the review→build handoff and never enters the build node. It shows on the dashboard as phase=build / status=active indefinitely.

Repro (live, 2026-06-24)

Submitted a menial docs task via run-team.py start --transport slack (thread cd7f1215…). It ran fully autonomously:

intake → clarify (no question) → plan → review ↺ plan → review ↺ plan → review → [stuck]

State afterwards:

  • /api/task timeline's last row is review with exited_at: null — there is no build transition row.
  • cost_by_stage: {}, $0 build spend — the build node never executed.
  • No pending question; the only journal traceback is the unrelated draft-pr-monitor gh poll.

Root cause (suspected)

On plan-approval the review path sets current_phase = BUILD, status = ACTIVE and routes toward BUILD_NODE (P3 env is configured: _p3_env_is_configured() == True). But the always-on coordinator's tick-resume only re-drives threads that have an answered pending_questions row or a CI-wait interrupt — not a thread that is simply suspended with its next node (build_node) queued and no interrupt. So an all-autonomous task (one that never opened a human gate) has nothing to re-drive it into the builder.

A task that did hit a clarifier/plan gate gets resumed when the answer lands, which is why this only bites the fully-autonomous path.

Impact

Autonomous tasks silently stall at "build/active" instead of producing a draft PR (or parking with a clear reason). Masquerades as in-progress build work.

Suggested fix direction

Have the coordinator tick also enumerate + resume threads that are suspended mid-graph with a pending next node and no interrupt (durably re-derivable from the checkpointer, same as the CI-wait enumeration), so the build node actually fires after an autonomous approval.

Found during the dashboard-redesign e2e test (PR #64). See project_r720_agent_team memory.

## Summary A task that clears the whole pipeline **autonomously** (no clarifier question, plan auto-approved through the review loop) **parks at the review→build handoff** and never enters the build node. It shows on the dashboard as `phase=build` / `status=active` indefinitely. ## Repro (live, 2026-06-24) Submitted a menial docs task via `run-team.py start --transport slack` (thread `cd7f1215…`). It ran fully autonomously: `intake → clarify (no question) → plan → review ↺ plan → review ↺ plan → review → [stuck]` State afterwards: - `/api/task` timeline's **last row is `review` with `exited_at: null`** — there is **no `build` transition row**. - `cost_by_stage: {}`, `$0` build spend — the build node **never executed**. - No pending question; the only journal traceback is the unrelated draft-pr-monitor `gh` poll. ## Root cause (suspected) On plan-approval the review path sets `current_phase = BUILD`, `status = ACTIVE` and routes toward `BUILD_NODE` (P3 env is configured: `_p3_env_is_configured() == True`). But the always-on coordinator's **tick-resume only re-drives threads that have an *answered* `pending_questions` row or a *CI-wait* interrupt** — not a thread that is simply suspended with its next node (`build_node`) queued and no interrupt. So an all-autonomous task (one that never opened a human gate) has nothing to re-drive it into the builder. A task that *did* hit a clarifier/plan gate gets resumed when the answer lands, which is why this only bites the fully-autonomous path. ## Impact Autonomous tasks silently stall at "build/active" instead of producing a draft PR (or parking with a clear reason). Masquerades as in-progress build work. ## Suggested fix direction Have the coordinator tick also enumerate + resume threads that are **suspended mid-graph with a pending next node and no interrupt** (durably re-derivable from the checkpointer, same as the CI-wait enumeration), so the build node actually fires after an autonomous approval. Found during the dashboard-redesign e2e test (PR #64). See `project_r720_agent_team` memory.
amoussa1229 commented 2026-07-14 23:03:19 +00:00 (Migrated from github.com)

agent-team subsystem was decommissioned 2026-06-26 and this repo is being archived — closing as not planned.

agent-team subsystem was decommissioned 2026-06-26 and this repo is being archived — closing as not planned.
This repo is archived. You cannot comment on issues.
No description provided.