Public: anyone can read this; the crew can change it.

On a new forge the first change lands: a green pull is not left waiting behind a paused run, a review loop or credit that reads spent at $0.48 of $2 #11541

Closed opened this
opened this

Evidence (host log and pages, forge probe-hhmk, app probe/page-says, pull #2).

[crew] green; queued for review repo=probe/page-says pull=2 reviewer=reviewer attempt=1
[crew] run paused run=01m76jxzkxat4j00yp6adjg6dk until=2026-11-12T00:52:00.162Z attempt=1
[crew] run paused run=01m76jzevn6wgye20kv32ygpf0 until=2026-11-12T00:52:02.135Z attempt=1 queued=01m76jzh203dp5nex8kr6xv47d
[crew] finishing: drop pull=2 why="not approved on its head"
[crew] changes requested: not moved, waits for a builder slot repo=probe/page-says pull=2
[autonomy] tick … startable=0 held="open_pull=1" … opened/landed 1/0 in 1 h … $0.48 stranded

What the person saw for twelve minutes: "builder · green — its tests passed, ready for a look"; on the pull, "Changes were asked on this head. Next: builder"; on the forge's home, "The included credit is spent." The pull page said "2 runs · $0.48 · 185k tok in · 3.4k tok out"; the app page showed "$0.75" and "Spent $0.00". The preview address showed the finished page; the app's own address never changed. Zero child forge stopped lines, so CPU was not the cause.

Three things are wrong, in the order to find them:

  1. Credit. $2 was included and the forge says it is spent after $0.48 (or $0.75, or $0.00 — three pages disagree). Find what was charged or reserved (a per-run budget of $5 shows in the run log as claude: budget $5.00; a reservation larger than the credit would explain it) and make the credit count what was actually spent. One number, the same on every page.
  2. The pause. Two runs paused for about 17 minutes (until=00:52) on a forge with nothing else to do, holding its only slot (concurrency=1), so the builder could not answer the review. Say why a run pauses in its own log line; a pause for credit or a rate limit must not hold the slot, and must be shown to the person with the time it resumes.
  3. The review loop on a first change. A one-page change with green tests was sent back and then stranded. On a forge's first asks, a pull that is green and that the reviewer did not reject for a defect lands; requested changes go to the builder at once, ahead of any pause. If the crew cannot finish (credit, key, limit), the person is told plainly and offered the two ways forward: Land it as it is (one button, the preview is right there) or add a key.

What the person should see. From the ask: "Building…", then "Ready: see the preview" with the preview link, then "Live" with the app's link, each within the journey's budget (#11158). Never "ready for a look" with nobody looking.

Acceptance. The stranger journey on a real cell with a stub model and $2 credit: ask → green pull → landed → the app's own address shows the change, under five minutes, spending under $1 of the credit, with the same credit figure on home, app and pull pages. A test where the credit truly runs out mid-way shows the plain message and the Land it button, and pressing it puts the change live. Production probe after release on a throwaway forge; paste its log lines. Do not close this until that probe passes.

commented

Parked by the crew: the check stayed red through 2 automatic tries (pull #11542 closed; its branch mason/11541-on-a-new-forge-the-first-change-lands-a at 647f99286c69 keeps the work so far). Planner: split this smaller, or rewrite what done looks like; a person can also say what to try.

try 1: src/crew/autonomy.ts, src/crew/dispatch.ts, src/crew/limits.ts, src/crew/runner.ts, src/web/studio/cannot_finish.ts, src/web/studio/change.ts, test/cred… try 2: test/pages-budget.test.ts try 3: no files changed

commented

Parked by the crew: the check stayed red through 2 automatic tries (pull #11546 closed; its branch scout/11541-on-a-new-forge-the-first-change-lands-a at 246c999390f3 keeps the work so far).

Parked twice since a person last spoke here, so it is the planner's now. Every reason:

  1. the check stayed red through 2 automatic tries (pull #11542 closed; its branch mason/11541-on-a-new-forge-the-first-change-lands-a at 647f99286c69 keeps the work so far)
  2. the check stayed red through 2 automatic tries (pull #11546 closed; its branch scout/11541-on-a-new-forge-the-first-change-lands-a at 246c999390f3 keeps the work so far)

The planner splits it, replaces it with a fresh issue, or defers it; a person can also say what to try. Nothing starts here until then, and the board lists it.

try 1: src/crew/dispatch.ts, src/crew/limits.ts, src/crew/runner.ts, test/subscriptions.test.ts try 2: docs/features/flow-clog.md, docs/features/plan-row.md, scripts/unreached-allow.json, src/crew/hot_files.ts, src/flow/clog_view.ts, src/spawn/preview-loo…

commented

Split into #11563 (credit counts what was spent; one figure on home, app and pull), #11564 (a paused run gives up its slot and says why and when it resumes) and #11565 (when the crew cannot finish a green first change: plain sentence and Land it as it is; it carries the production probe you asked for, for a person to run after release). The parked branches keep the earlier attempts.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs