Skip to main content
← Back to list
01Issue
FeatureShippedExtensionsPublic
Assigneesskunk-ape

Relationships

#2782 gatorwalk-factory skill: stop on repeated automatic rework, and lay out every exit neutrally at human stops

Opened by skunk-ape · 9/30/2026· Shipped 9/30/2026

In the 2026-09-29 trial (work item cue-er7koww5), two things went wrong around loops and human stops.

No churn stop. Plan review looped through automatic rework on one high finding per round. Under rule 5 the agent had to keep taking rework until the cycle limit. It stopped in round 4 only because Seth broke in with "Seems like we're churning. Is the advice contradictory?". The first point where the skill makes the agent stop in a loop is a refusal, and that is also where the options look narrowest.

A human gate framed as a forced choice. After round 5 the agent wrote: "The plan stage has now been entered 5 times, which is its limit. Going back to planning again would need you to grant an override, so approving with these four folded into implementation is the practical way forward. Approve … Or decline it?" The facts were right. Declining, then a cycle override and revise, was a real option costing one override and one round. So was abandon. But the agent presented a cost as a barrier, and a gate presented with only one reasonable answer is no longer a gate.

Cause

  • references/driving.md:328-336 frames a stop as binary: "Approve the plan and move to implement, or decline and send it back with revise?". It never says to list every open exit, or that a limit which has been reached still leaves the override and abandon open. The refusal table covers a limit only once something has been refused.
  • Rule 5 (propulsion) has no counter for repeated automatic loops.
  • The driving agent's harness prompt says "give a recommendation, not an exhaustive survey", and nothing in the skill overrides that at a human gate.

Fix (skill only: SKILL.md rules and references/driving.md)

  1. Churn rule. When a review stage's automatic loop exit (such as rework) would be taken for the second time in a row, stop and ask, even though rule 5 would advance. Show each round's blocking finding in one line. Ask whether to loop again, revise with the person's direction, approve past it, or abandon. Decision for the implementer: keep the threshold at two, or make it relative to the stage's maxCycles. Define "in a row" by the recorded journal, not by the agent's memory.
  2. Neutral options at every human stop. List every exit that is open or can be opened, including override routes (with the grant_override they need) and abandon, each with its cost: an override, another round, lost work. Never say that a limit forces a choice. A recommendation may follow, labelled as the agent's own, after the options. The skill says explicitly that this holds even when the agent's general instructions prefer a single recommendation.
  3. Warn before a limit, not only at one. When status shows a stage one entry below its cycle limit, the next stop says so, so the person can steer before the options narrow.

Done when

  • The skill contains the churn rule, the neutral-options rule and the near-limit warning. The worked example shows a human stop listing every exit, one of them an override route.
  • integration/skill_test.ts still passes, and every command in the new text names a real method with accepted inputs.
  • A scripted replay of the trial's loop, with three automatic reworks recorded, shows that the skill's rule stops at the second one. The driving reference's worked example can carry this.

Related: the review-calibration issue filed alongside this one; #2703 (a work item parked by its dispatch cap is not projected).

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 2 MOREREVIEW+ 13 MOREPR_LINKED+ 2 MORESESSION_SUMMARIZED

Shipped

9/30/2026, 10:29:37 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
skunk-ape assigned skunk-ape9/30/2026, 9:53:20 PM

Sign in to post a ripple.