Two loose ends closed before the Harrison re-gate, both surfaced by the steward. Memory pointers. Six links in MEMORY.md / MEMORY-reference.md pointed at files that all existed, via hand-counted relative depths that resolved from neither of the memory dir's two addresses (it is ~/dotfiles/claude/memory, symlinked from ~/.claude/projects/…). The wake canary detected this correctly FOUR times over two days and the banked remedy was to change the canary's path resolution — i.e. to silence a true positive. The defect was never the pointers: the alarm emitted one undifferentiated word, MISSING, so every firing had to be re-diagnosed by hand and the cheapest re-diagnosis is always "known bug". wake-digest.py now reports four outcomes (ok / mis-authored / dead / non-portable), hands back the exact replacement, and carries a regression control replaying this bug's shape. Pointers are home-anchored (~/…), not absolute — steward's correction; absolute hardcodes this machine into the repo whose purpose is surviving a machine change. Maps. With the noise gone, one genuine dead pointer surfaced: arc-current-state-2026-05-07.md, a live ARC dashboard the steward read to orient. It lived only on the Desktop and went with a tidy-up. A census found four more in the same condition, zero copies anywhere — including the Making-Sequence architecture and reading list, load-bearing for current corpus work. The cause is structural: code, session records and memories are durable; the one artifact class addressed to the steward had no home. All five now live in maps/ and are symlinked back to their exact Desktop paths (Desktop view unchanged), moved under a checksum gate with a positive control. wake-digest.py reports stray Desktop maps; it never moves them — the Desktop is the steward's. How to verify: python3 scripts/wake-digest.py --selftest # 28 controls, PASS python3 scripts/wake-digest.py | grep -A3 'MEMORY POINTERS' cd ~/Desktop && shasum -a 256 *.md # reads through the symlinks What was not changed: ~/CLAUDE.md and REVIEWED.md untouched (Constraint #1). No Desktop file was deleted or renamed. MEMORY-reference.md's May entry is marked superseded, not rewritten. Known limitation: maps/ has no successor for the ARC map's FUNCTION — the open-work register carries the content, but nothing exists that the steward can open and orient by. Named in the entry rather than quietly closed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WuMjg3ipEVa3n8CoSzoyvc
54 lines
2.5 KiB
Markdown
54 lines
2.5 KiB
Markdown
# maps/ — artifacts addressed to the steward
|
|
|
|
A **map** is something David reads *directly* to orient himself: a current-state
|
|
dashboard, a corpus index, a reading list, an architectural sketch, an audit he
|
|
opens rather than asks about.
|
|
|
|
Maps are not session records and not memory files. Session records are written
|
|
for the next session; memory files are written for the next Claude. A map is
|
|
written for **the person the whole system is for**, and he does not browse
|
|
`~/.claude/projects/…/memory/` — so a map filed there is a map that is not read.
|
|
|
|
## Why this directory exists
|
|
|
|
Because one was lost. `arc-current-state-2026-05-07.md` was a live ARC dashboard
|
|
kept on the Desktop. The Desktop was tidied at some point and the map went with
|
|
it; the only surviving trace was a link in `MEMORY-reference.md` that read as
|
|
noise for three months and was nearly deleted as such. On 2026-07-28 a census
|
|
found **four more** in the same condition — Making-Sequence architecture and
|
|
reading list among them, load-bearing for live corpus work — every one of them
|
|
with zero copies anywhere else.
|
|
|
|
The cause was structural, not careless: maps had no home. Session records,
|
|
memories and code were all durable; the one artifact class addressed to the
|
|
steward lived on a desktop and was one tidy-up from gone.
|
|
|
|
## How it works
|
|
|
|
Files live **here** (git-tracked, pushed with the rest of dotfiles). Each is
|
|
symlinked back to its original Desktop path, so the Desktop looks and behaves
|
|
exactly as before — same filenames, same place, nothing to remember.
|
|
|
|
~/Desktop/corpus-index-2026-07-26.md → ~/dotfiles/maps/corpus-index-2026-07-26.md
|
|
|
|
Tidying the Desktop now deletes a *symlink*. The map survives.
|
|
|
|
## The rule, for whoever writes the next one
|
|
|
|
**Write maps here, then symlink to the Desktop — never the other way round.**
|
|
A map authored straight onto the Desktop is untracked from the moment it exists,
|
|
which is the exact failure this directory closes.
|
|
|
|
`wake-digest.py` reports any top-level Desktop `.md` that is not a symlink into
|
|
this directory, so a stray map is visible at the next wake rather than at the
|
|
next loss. It reports; it does not move anything — the Desktop is the steward's.
|
|
|
|
## Naming
|
|
|
|
Date-stamped, kebab-case, subject first: `corpus-index-2026-07-26.md`. A map is
|
|
a point-in-time artifact; a map without a date cannot be told from a current one.
|
|
Superseding a map does not mean deleting it — write the new one and let the dates
|
|
order them.
|
|
|
|
*Established 2026-07-28 at the steward's direction, after the loss above.*
|