Development record
Lanes parked at land are renewed on every drain move from local state alone, whatever their pull request's state, and a lane whose head is not on main is skipped silently, so a pull request closed, dropped from the merge queue or conflicting after arming keeps its issue reserved and counted against the cap indefinitely and next never names it.
issueresolvedmajoriss-2610161015381750
Lanes parked at land are renewed on every drain move from local state alone, whatever their pull request's state, and a lane whose head is not on main is skipped silently, so a pull request closed, dropped from the merge queue or conflicting after arming keeps its issue reserved and counted against the cap indefinitely and next never names it.
Frontmatter
| id | iss-2610161015381750 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-2610161015381750-lanes-parked-at-land-are-renewed-on.md
open on GitHub ↗ · commit history ↗
References1
- itd-2610161016391855A stuck drain lane hands itself backrelated
mentions3
- dcn-26101610403809482026-10-16 — Parked lanes are read from their pull requests (facilitator-on-delegation, drain-many-accounts): each drain move reads every parked lane's pull request in one forge listing; a closed pull request releases its lane's reservation and hands the lane back, a conflicting one stops being renewed and is named in next, and a parked lane whose head is not yet on the default branch is named as waiting rather than skipped (grounds: the pull request's state is the evidence of the lane's progress, and one listing costs one request a move; iss-2610161015381750).
- dcn-26101707280748672026-10-17 — A drain move reads its parked lanes from one listing of the person's own latest pull requests (facilitator-on-delegation, drain-many-accounts step 8): gh pr list --state all --author @me --limit 100, one page of the forge's API, matched to each parked lane by number and head branch; gh's pr list names no merge-queue field (ghcontract pins gh 2.100.0's list), so the arming (autoMergeRequest) stands for the queue entry; a pull request the listing does not show, or a listing that fails, keeps its lane renewed as before, so only an answer the forge gave changes a lane; one merged by a squash or rebase, its head not on the default branch, is named and no longer renewed; a lane handed back as closed keeps its worktree and branch for implement step --discard, which then closes nothing (grounds: one request a move, as dcn-2610161040380948 sets; fail-safe reading, where absence is never evidence of closure; iss-2610161015381750)
- spc-2610161044461448drain-many-accounts