Development record
The implement loop's landing never writes a spec step's '- landed:' line, so a spec the loop landed part of still reads those steps as unlanded: a later 'spec close --remainder' carries steps that already merged into the remainder, and a fresh 'abcd build' of the same spec opens a lane for them again. Found by the fidelity audit of itd-2609212103565953 (receipt rcp-2257cc3a38d9, criterion ac-3 MET_WITH_CONCERNS); spc-2609202134338445's Progress already says the landing does not mark a non-closing lane's step.
The implement loop's landing never writes a spec step's '- landed:' line, so a spec the loop landed part of still reads those steps as unlanded: a later 'spec close --remainder' carries steps that already merged into the remainder, and a fresh 'abcd build' of the same spec opens a lane for them again. Found by the fidelity audit of itd-2609212103565953 (receipt rcp-2257cc3a38d9, criterion ac-3 MET_WITH_CONCERNS); spc-2609202134338445's Progress already says the landing does not mark a non-closing lane's step.
Grounds
- pursued: a spec the loop lands part of reads its landed steps as landed, so a later build opens its first lane on the first unlanded step; shown wrong if a build of a part-landed spec opens a lane for a step already on the default branch
Further cases, 2026-10-23
While declaring needs lines on the open specs (2026-10-23), these open specs were found with steps whose code is on the default branch but whose landed: line is absent, so a fresh build of the spec would open a lane for each again:
- spc-2609212015054359 (drain ledger triage), steps 1 to 3: 80fa3da48, 378348a14, 91765d9c5, which the spec's own Progress names.
- spc-2610021456200324 (the consistency pass), steps 1 to 3: 5887d3fdb, ec7156cfc, ec768a4d1.
- spc-2610031844142274 (the board at the terminal's width), steps 1 to 4: 92722ff92, ca821c7fa, 317f6bf70, 7995f892b.
- spc-2610150728396006 (sessions announce), steps 1 to 4, through pull request 1065.
- spc-2610040741034208 (the dashboard), step 1: 77ca9b27a.
- spc-2610111627213138 (memory recall), steps 1 and 2: c8d1ab0df, 59b69f398.
The remedy stands for lanes still to land. These existing cases also need a one-off backfill of their landed: lines, each checked against its commit, before any of these specs is built again.
Backfilled the same day for the four specs no lane owns, each line checked against its commit on the default branch (the subject, and the body naming the step where it does): drain ledger triage steps 1 to 3, the consistency pass steps 1 to 3, the board steps 1 to 4 (step 5's page landed only in part, so it stays unlanded), and the dashboard step 1 (the tailnet reader and the verb). Sessions announce is left for its owner, and memory recall waits for the open pull request that edits its spec. The remedy, landing that writes the line itself, is still owed.
Frontmatter
| id | iss-2610110918418459 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | minor |
.abcd/work/issues/resolved/iss-2610110918418459-landing-never-marks-step-landed.md
open on GitHub ↗ · commit history ↗
mentions9
- iss-2610241104098581Sessions treat merges as held for a release cut whose holder has crashed: on 2026-10-24 local session abcd-0d told every session that v0.15.2 is being cut so merges are held, while the only marker of that cut on origin is the reservation rel-v0.15.2, held by copy 07cd3b4c167cec332f8c01cf42ad41d6 (a computer that crashed), last renewed 2026-10-23T08:52:49Z and expired 2026-10-24T08:52:49Z, with no standing announcement, no release branch and no newer tag. Nothing names a cut as abandoned: abcd status lists rel-v0.15.2 as an ordinary expired reservation, so a session reading it, or relaying a hold heard earlier, keeps work waiting on a session that no longer exists, and two finished pull requests (the drain spec's landed marks, the fix for iss-2610110918418459) sat waiting for a ruling from it.
- itd-2609212103565953A spec lists its steps, and the build lands them one at a time
- spc-2609202134338445one-verb-takes-a-single-intent-from-ready-to-delivered-witho
- spc-2609212015054359drain-ledger-triage
- spc-2610021456200324The consistency pass at commit time: a stable finding key, cross-document lint codes, chunked review, and a pre-commit gate
- spc-2610031844142274when-you-type-abcd-in-a-terminal-or-ask-for-the-board-in-a
- spc-2610040741034208a-product-thinker-opens-abcd-s-dashboard-in-a-web-browser-on
- spc-2610111627213138memory-recall
- spc-2610150728396006sessions-announce-what-they-are-doing