Description
The specs quality audit in PR #6629 found that `specs/004-memory/004-16-memory-type-aware-retrieval.md` and `specs/004-memory/004-16-shadow-memory-safety.md` both claim the `004-16` slot. This can't be fixed as a docs-only rename: `004-16-shadow-memory-safety.md`'s own preamble documents that production rustdoc comments in `crates/zeph-common/src/memory.rs` and elsewhere already cite "spec 004-16" for the shadow-memory-safety content specifically. Renumbering the doc without also updating those rustdoc citations would desync them again, repeating the class of drift already fixed once in #6308.
Reproduction Steps
- `ls specs/004-memory/ | grep 004-16` — two files match
- `rg "spec 004-16" crates/` — find the rustdoc citations that assume `004-16` means shadow-memory-safety specifically
Expected Behavior
Exactly one file owns the `004-16` slot. The other (`004-16-memory-type-aware-retrieval.md`, which has no known external code citations by number) is renumbered to a free slot, and `specs/README.md` / `specs/MOC-specs.md` are updated to match.
Actual Behavior
Two files share the same spec number; whichever one an external citation like "see spec 004-16" refers to is ambiguous without reading both.
Environment
Logs / Evidence
See PR #6629 description, "Flagged, not executed" section, item 6, and prior related fix in #6308 (specs/README.md index drift — same class of problem, different cause).
Description
The specs quality audit in PR #6629 found that `specs/004-memory/004-16-memory-type-aware-retrieval.md` and `specs/004-memory/004-16-shadow-memory-safety.md` both claim the `004-16` slot. This can't be fixed as a docs-only rename: `004-16-shadow-memory-safety.md`'s own preamble documents that production rustdoc comments in `crates/zeph-common/src/memory.rs` and elsewhere already cite "spec 004-16" for the shadow-memory-safety content specifically. Renumbering the doc without also updating those rustdoc citations would desync them again, repeating the class of drift already fixed once in #6308.
Reproduction Steps
Expected Behavior
Exactly one file owns the `004-16` slot. The other (`004-16-memory-type-aware-retrieval.md`, which has no known external code citations by number) is renumbered to a free slot, and `specs/README.md` / `specs/MOC-specs.md` are updated to match.
Actual Behavior
Two files share the same spec number; whichever one an external citation like "see spec 004-16" refers to is ambiguous without reading both.
Environment
Logs / Evidence
See PR #6629 description, "Flagged, not executed" section, item 6, and prior related fix in #6308 (specs/README.md index drift — same class of problem, different cause).