Development record
No test reaches indexDigest's ELOOP refusal or its SameFile check after the open (internal/core/implement/loop/autoplan.go, about lines 267 and 275): TestAnIndexTheDigestCannotCopyReadsAsChangedEveryTime reaches the Lstat branch and the copy bound, not the open's branches, because a symlink or a FIFO is refused before the open.
issueresolvedminoriss-2610312044569253
No test reaches indexDigest's ELOOP refusal or its SameFile check after the open (internal/core/implement/loop/autoplan.go, about lines 267 and 275): TestAnIndexTheDigestCannotCopyReadsAsChangedEveryTime reaches the Lstat branch and the copy bound, not the open's branches, because a symlink or a FIFO is refused before the open.
Grounds
- pursued: we expect each swap to reach its open-time branch and yield an uncopied value; shown wrong if removing the ELOOP case, the SameFile check, O_NOFOLLOW or O_NONBLOCK leaves the test passing (each was tried and each made it fail)
Frontmatter
| id | iss-2610312044569253 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | minor |
.abcd/work/issues/resolved/iss-2610312044569253-no-test-reaches-indexdigest-s-eloop.md
open on GitHub ↗ · commit history ↗
mentions1
- iss-2611010953085251A drain lane's land stage reads its issue's found_at from the ledger of the checkout the run lives in, while the drain judged and opened the issue from origin's default branch. When that checkout is behind origin and lacks the record, a landing that must sync with a moved main refuses at the reservation ('in no status folder of this checkout's ledger') after its review round has passed, because reserveOnLeavingLand asks runFootprint for the found_at to widen the narrowed reservation back to (internal/core/implement/loop/reservation.go). Attended, the only way past is to fast-forward the checkout; unattended, the stuck rule hands the lane back after three identical refusals or an hour at the stage and releases its reservation, discarding the validated work. Seen on 2026-11-01: run-2611010841189220 for iss-2610312044569253 stopped at landing after round 1 until the main checkout, 135 commits behind, was fast-forwarded.