Development record
A lane that refuses at a step without handing back (a conflicting pull request at arming, the land fence, or a brief refused because the issue is already resolved at the base) is read by laneOutcome as in progress, so every later drain move answers "drive" that lane and the drain opens nothing more; implement step --discard and --release act only on held lanes, so only removing the run directory by hand frees it.
issueresolvedmajoriss-2610161015368630
A lane that refuses at a step without handing back (a conflicting pull request at arming, the land fence, or a brief refused because the issue is already resolved at the base) is read by laneOutcome as in progress, so every later drain move answers "drive" that lane and the drain opens nothing more; implement step --discard and --release act only on held lanes, so only removing the run directory by hand frees it.
Frontmatter
| id | iss-2610161015368630 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-2610161015368630-a-lane-that-refuses-at-a-step-without.md
open on GitHub ↗ · commit history ↗
References1
- itd-2610161016391855A stuck drain lane hands itself backrelated
mentions4
- dcn-26101610403820672026-10-16 — A stuck drain lane hands itself back (facilitator-on-delegation, drain-many-accounts): a drain lane whose step has refused identically three times, or has refused at one stage for sixty minutes, is handed back as stuck and its reservation released; refusals that are waits by design, the preflight-receipt wait and an outage wait, never count; both bounds are configurable in the pace's layers; a refusal that cannot change (the issue finished at the base or on the default branch, or the hold now another's) hands back at once; and implement step --discard accepts a lane handed back as stuck (grounds: dead-letter redrive after a maximum receive count, as SQS maxReceiveCount; iss-2610161015368630).
- dcn-26101700053575882026-10-17 — A drain lane's refusals are logged on the lane of an issue run only, and a stuck lane is discarded by the step verb (facilitator-on-delegation, drain-many-accounts): only an issue run, the run a drain or abcd build <iss-N> opens, logs a refused step, on its lane as the state's refused (the stage, the check, the reason, a count of the same refusal in a row, since when it has refused at that stage, and why it cannot change), so an intent's run still writes nothing on a refusal; the run record gains a line only when a new count starts or a refusal turns final, so a host polling a refusing lane does not grow it; the state's schema goes to version 13, which version-12 releases refuse as a newer abcd's file; the bounds are pace.stuck_refusals (bundled 3) and pace.stuck_minutes (bundled 60), claimed in the pace's namespace and read through its layers at every drain move rather than stored in the drain's pace, so a changed bound applies from the next move; a refusal that cannot change is a brief refused for an issue resolved or wontfix at the lane's base, and a land fence finding the reservation another person's or released as finished on origin's default branch; and implement step --discard takes a lane handed back as stuck, after which the issue run is complete (grounds: dead-letter redrive after a maximum receive count, as Amazon SQS maxReceiveCount, with the refusal contract of the loop kept where no drain reads it; spc-2610161044461448 step 5; iss-2610161015368630)
- iss-2610160957404827abcd drain reads the issue ledger of the checkout it runs in and never checks whether that checkout is behind origin's default branch: from a primary checkout 185 commits behind main, the dry run listed 162 eligible issues from the stale ledger, many since fixed or changed, and a run would judge, reserve and work from that list.
- spc-2610161044461448drain-many-accounts