Development record
While a lane's landing is held by another copy's release reservation (rel-vX.Y.Z), every implement step pushes a fresh renewal of the lane's reservation to origin, whatever its age: on 2026-10-23 the branch abcd-reserved/iss-2610120138028442 took five renewal commits between 06:02:43Z and 06:02:57Z and one per later step, each for two hours. commands/build.md says a renewal is pushed only once half the lease has passed, and that the land fence, when it holds, renews for a day; neither holds on the release-hold path, so a lane held for a day writes dozens of commits to the reservation branch.
While a lane's landing is held by another copy's release reservation (rel-vX.Y.Z), every implement step pushes a fresh renewal of the lane's reservation to origin, whatever its age: on 2026-10-23 the branch abcd-reserved/iss-2610120138028442 took five renewal commits between 06:02:43Z and 06:02:57Z and one per later step, each for two hours. commands/build.md says a renewal is pushed only once half the lease has passed, and that the land fence, when it holds, renews for a day; neither holds on the release-hold path, so a lane held for a day writes dozens of commits to the reservation branch.
Frontmatter
| id | iss-2610230651407493 |
|---|---|
| type | issue |
| lifecycle | open |
| severity | minor |
.abcd/work/issues/open/iss-2610230651407493-while-a-lane-s-landing-is-held-by.md
open on GitHub ↗ · commit history ↗
mentions1
- iss-2610120138028442The implement loop's merged check (internal/core/implement/loop/land.go, landMerged) asks the forge twice per poll while a pull request is not merged: `gh pr view --json state`, then prMergeability's `gh pr view --json mergeable,mergeStateStatus`. Both fields come from one view, so each poll spends two forge calls where one would answer, against the same rate limit the loop's other waits share.