Development record
adr-35 leaves two paths by which disembark still writes into the source repo: the Pass-0 dev-sync stage (writes .abcd/work/reviews, .abcd/memory, .abcd/work/issues into the repo) and the backgrounded-execution checkpoint (.abcd/logbook/disembark/<ts>/_state.json). adr-35 promises disembark is read-only over the source and that a test hashes the tree before and after, so both must move out-of-tree (under <dest>, or under ~/.abcd/voyage/<source-root-sha>/) or be excluded from the disembark path entirely. adr-35 does not settle where they go — a design decision owed before the packer ships.
adr-35 leaves two paths by which disembark still writes into the source repo: the Pass-0 dev-sync stage (writes .abcd/work/reviews, .abcd/memory, .abcd/work/issues into the repo) and the backgrounded-execution checkpoint (.abcd/logbook/disembark/<ts>/_state.json). adr-35 promises disembark is read-only over the source and that a test hashes the tree before and after, so both must move out-of-tree (under <dest>, or under ~/.abcd/voyage/<source-root-sha>/) or be excluded from the disembark path entirely. adr-35 does not settle where they go — a design decision owed before the packer ships.
Grounds
- pursued: disembark writes nothing into the source repository; shown wrong if a disembark run changes any byte of the source tree
Frontmatter
| id | iss-93 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-93-adr-35-leaves-two-paths-by-which.md
open on GitHub ↗ · commit history ↗
mentions3
- adr-35The lifeboat is a coverage experiment — read-only, out-of-tree, and proven before it is packed (supersedes adr-4)
- dcn-26071400000000062026-07-14 — iss-93: adr-35 promises disembark is READ-ONLY over the source (a test
- dcn-26072700000000012026-07-27 (salvage): the four 2026-07-13/14 ideation-session entries above are appended out of chronological order — recovered from an unmerged ideation branch during branch cleanup, together with their research/plan docs; the /abcd:ideate seed from that session is re-recorded as itd-104 (its branch-local iss-93 capture id had collided with main's iss-93 and is retired unused).