Development record
2026-10-17 — A lane's reservation narrows by a renewal that carries the narrower footprint, never by a fresh reservation (facilitator-on-delegation, drain-many-accounts step 12): claim.Request gains Narrow, honoured only with Renew and only when the fetched tip's footprint covers every path of it, so the compare-and-swap that refuses a released, lapsed-and-taken or another copy's tip refuses a narrowing too, and a hold never widens; the narrowed set is the files the lane's own non-merge commits changed from its base to its head that lie within the tip's footprint, taken at the first due renewal once an issue lane is past its implement stage; a narrowing too long for the message cap is not made and the renewal still is; an intent's run never narrows, since its one reservation covers lanes not yet opened; a later fix that changes a file outside the narrowed footprint is not re-reserved by a renewal (grounds: lock de-escalation, which only ever weakens a held lock; a plain reserve over one's own tip would re-reserve a record a person released; iss-2610152125101468)
2026-10-17 — A lane's reservation narrows by a renewal that carries the narrower footprint, never by a fresh reservation (facilitator-on-delegation, drain-many-accounts step 12): claim.Request gains Narrow, honoured only with Renew and only when the fetched tip's footprint covers every path of it, so the compare-and-swap that refuses a released, lapsed-and-taken or another copy's tip refuses a narrowing too, and a hold never widens; the narrowed set is the files the lane's own non-merge commits changed from its base to its head that lie within the tip's footprint, taken at the first due renewal once an issue lane is past its implement stage; a narrowing too long for the message cap is not made and the renewal still is; an intent's run never narrows, since its one reservation covers lanes not yet opened; a later fix that changes a file outside the narrowed footprint is not re-reserved by a renewal (grounds: lock de-escalation, which only ever weakens a held lock; a plain reserve over one's own tip would re-reserve a record a person released; iss-2610152125101468)
Frontmatter
| id | dcn-2610170734071361 |
|---|---|
| type | decision |
| date | 2026-10-17 |
.abcd/work/decisions/dcn-2610170734071361-a-lane-s-reservation-narrows-by-a.md
open on GitHub ↗ · commit history ↗
mentions2
- dcn-26101709190404862026-10-17 — A lane's reservation narrows only at its landing, once its validators have passed, and a resumed issue run keeps the narrowing (facilitator-on-delegation, drain-many-accounts step 12, refining dcn-2610170734071361): the narrowing is taken at the first due renewal while an issue lane is at StageLand, never during its validate stage, since a fix round there can still change a file of the reservation's footprint that a narrowing would have freed; the narrowed set is the lane's own changes, git diff --name-only from the merge base of its head and origin's default branch to its head, so a merged default branch's files are left out and a conflict resolved in a sync's merge commit counts; a changed file within the footprint that no reservation may carry (claim.ValidFootprintPath) means no narrowing at all, since leaving it out would free a file the lane still changes; claim drops a Narrow naming such a path and renews anyway, as it does one over the message cap, so a renewal never fails over its narrowing; a resumed issue run whose reservation tip lies within the record's footprint renews the tip as it stands, the widening re-reserve kept for an intent's record alone (grounds: lock de-escalation is safe only once the held set can no longer grow; a renewal that fails lets the reservation lapse while the lane lives; review of spc-2610161044461448 steps 8, 12 and 13)
- iss-2610152125101468A reservation footprint can hold a whole directory (docs, hooks, internal/surface/cli), and the overlap check then refuses every other reservation naming any file inside it. Generated files that every verb-adding branch regenerates, such as docs/reference/cli/commands.md, sit inside such directories, so two unrelated intents held by the same person from two copies could not both declare an honest footprint: on 2026-10-15 the messaging reservation's renewal was refused twice and had to leave out .githooks/pre-push, the ruleset mirror and the generated CLI reference, which it does change.