Record how the casino finds its files #51

Open
opened 2026-08-15 18:59:35 +00:00 by rosa · 0 comments
Owner

What to build

Record the commitment the preceding work makes, in the form the repo's existing
decision records take: the program is handed where its files live rather than
finding them, and asks the system where a user's files go in exactly one
wrapper, behind a seam constructor that takes the directories outright.

It borrows its shape from ADR 0002, separating the engine from the UI — a
convenient constructor obliged to stay a thin wrapper over the seam, the seam
being the one place the thing can be pinned for a test — and should say so.
Worth recording as consequences: the two-stage resolution that having overrides
forces, the environment variables as the seam's public face, and the cost, which
is that every future module touching disk has to be handed its locations too
rather than reaching for them.

The housekeeping split does not get a record of its own. It is not a new
decision — it is ADR 0003, wording shared dialogue once, and the engine/UI split
applied outside a game for the first time. Cite them rather than restating them;
a record that only says "we followed our own rule" dilutes the set.

Acceptance criteria

  • A new ADR, numbered next in sequence, in the form the existing three take
  • Cites ADR 0002 for the seam-constructor shape it borrows
  • States the cost as well as the benefit
  • No separate record for the housekeeping split
  • No CHANGELOG entry — a decision record is not a change to the program

Blocked by

## What to build Record the commitment the preceding work makes, in the form the repo's existing decision records take: the program is handed where its files live rather than finding them, and asks the system where a user's files go in exactly one wrapper, behind a seam constructor that takes the directories outright. It borrows its shape from ADR 0002, separating the engine from the UI — a convenient constructor obliged to stay a thin wrapper over the seam, the seam being the one place the thing can be pinned for a test — and should say so. Worth recording as consequences: the two-stage resolution that having overrides forces, the environment variables as the seam's public face, and the cost, which is that every future module touching disk has to be handed its locations too rather than reaching for them. The housekeeping split does not get a record of its own. It is not a new decision — it is ADR 0003, wording shared dialogue once, and the engine/UI split applied outside a game for the first time. Cite them rather than restating them; a record that only says "we followed our own rule" dilutes the set. ## Acceptance criteria - [ ] A new ADR, numbered next in sequence, in the form the existing three take - [ ] Cites ADR 0002 for the seam-constructor shape it borrows - [ ] States the cost as well as the benefit - [ ] No separate record for the housekeeping split - [ ] No CHANGELOG entry — a decision record is not a change to the program ## Blocked by - #47 - #48
Sign in to join this conversation.
No description provided.