R76.H4 — Audit: inventory-r74-2.md dangling references
Context
docs/inventory-r74-2.md was absorbed into CLAUDE.md §9.2 and deleted in R75. The zoned manifest it held (12 top-level directories with CANON / HERITAGE / MIRROR / SCRATCH / VENDOR zone tags) now lives in CLAUDE.md §9.2 — Twelve top-level directories — zoned manifest (R74.2). Any remaining link to docs/inventory-r74-2.md is dangling because the target file no longer exists in the tree.
Grep results at d4a11ab6
Command: grep -rn "inventory-r74-2" . --include="*.md" (excluding node_modules, .worktrees, .venv-tools).
Live files — in scope (7 refs across 5 tracked files, plus temp/README.md)
| # | File | Line | Context | Disposition |
|---|---|---|---|---|
| 1 | .agents/skills/colibri-docs-check/SKILL.md |
40 | Cross-check against [docs/inventory-r74-2.md](...), which holds the canonical 12-folder manifest and the 656-file baseline. |
REDIRECT to CLAUDE.md §9.2 |
| 2 | .agents/skills/colibri-docs-check/SKILL.md |
142 | - [docs/inventory-r74-2.md](...) — canonical 12-folder inventory (References section list item) |
REDIRECT to CLAUDE.md §9.2 |
| 3 | .claude/skills/colibri-docs-check/SKILL.md |
38 | Same as canon L40 (mirror) | SYNC from canon (cp after canon edited) |
| 4 | .claude/skills/colibri-docs-check/SKILL.md |
138 | Same as canon L142 (mirror) | SYNC from canon (cp after canon edited) |
| 5 | projects/README.md |
8 | HERITAGE zone banner: Zone declared in [../docs/inventory-r74-2.md](...) §2. |
REDIRECT to CLAUDE.md §9.2 |
| 6 | .vscode/README.md |
13 | Zone declared in [../docs/inventory-r74-2.md](...) §2. |
REDIRECT to CLAUDE.md §9.2 |
| 7 | data/README.md |
8 | Zone declared in [docs/inventory-r74-2.md](...) §2. |
REDIRECT to CLAUDE.md §9.2 |
| 8 | temp/README.md |
10 | Zone declared in [../docs/inventory-r74-2.md](...) §2. |
REDIRECT to CLAUDE.md §9.2 |
| 9 | temp/README.md |
36 | See [../docs/inventory-r74-2.md](...) for the full 12-folder manifest. |
REDIRECT to CLAUDE.md §9.2 |
Total live refs to redirect: 9 (across 6 tracked files). The task prompt estimated 6 in 5 files; the actual count is 9 in 6 files because temp/README.md (2 refs) was not listed in the estimate but is a tracked SCRATCH-zone file with the same dangling-ref problem. It is included in scope per the audit goal: “zero inventory-r74-2 refs in live files, only the 6 named read-only-history files excluded.”
Mirror (.claude/skills/colibri-docs-check/SKILL.md) gets the canon version via cp, not a hand edit — per CLAUDE.md §9.2 “Do not edit .claude/skills/colibri-* by hand.”
Read-only history — out of scope (11 refs across 6 files)
These are audit trails and planning history that document the R75 absorption. They should NOT be edited — they record the journey.
| File | Hits | Why untouched |
|---|---|---|
CLAUDE.md |
1 (L155) | Historical statement: “the earlier docs/inventory-r74-2.md was absorbed into this table and deleted in R75” — correct history, no broken link |
docs/PLAN-RED.md |
1 (L186) | Superseded planning doc |
docs/audits/r75-plan-red-audit.md |
3 | Audit history |
docs/contracts/r75-plan-red-contract.md |
1 | Contract history |
docs/packets/r75-plan-red-packet.md |
5 (including the actual git rm line) |
Packet history |
docs/verification/r75-plan-red-verification.md |
1 (grep pattern string) | Verification history |
Additional out-of-scope hits (spawn traces, per CLAUDE.md §9.2 “Spawns are read-only”):
| File | Hits |
|---|---|
.agents/spawns/r76-phase-0-to-1-bridge/manifest.md |
2 |
The spawn manifest is a session trace for this very round and is not rewritten by executors.
Also appears in historical body copy on colibri-docs-check SKILL.md L11
Line 11 contains the prose "the old docs/inventory-r74-2.md was absorbed into §9.2 and removed in R75" — a bare path mention inside a sentence, not a markdown link. It documents the closure and is a correct historical statement. Leave it alone.
Replacement pattern
All 9 live-file refs share one of two shapes:
- Link to file:
[docs/inventory-r74-2.md](relative/path/to/docs/inventory-r74-2.md)or[../docs/inventory-r74-2.md](../docs/inventory-r74-2.md) - Prose mention with link: “Zone declared in […]” or “Cross-check against […]” or “See […] for the full 12-folder manifest”
Replacement target (per task prompt):
- Link text:
CLAUDE.md §9.2(or[CLAUDE.md §9.2]inside brackets) - Link target: the correct relative path from the editing file to
CLAUDE.mdfollowed by#92-twelve-top-level-directories--zoned-manifest-r742 - Prose adjustment: swap “canonical 12-folder inventory” / “full 12-folder manifest” for “12-folder zoned manifest” and adjust verbs where needed.
Relative-path map per edited file
| File | Relative path to CLAUDE.md |
|---|---|
.agents/skills/colibri-docs-check/SKILL.md |
../../../CLAUDE.md |
.claude/skills/colibri-docs-check/SKILL.md |
../../../CLAUDE.md |
projects/README.md |
../CLAUDE.md |
.vscode/README.md |
../CLAUDE.md |
data/README.md |
../CLAUDE.md |
temp/README.md |
../CLAUDE.md |
Mirror sync rule
Per CLAUDE.md §9.2: .claude/skills/colibri-* is a MIRROR of .agents/skills/colibri-*. Canon in .agents/ is authoritative; mirror is hand-edit-forbidden.
R76.H3 added inline strike-throughs and Phase 0 reality callouts to canon-only for four skills (docs-check, tier1-chains, mcp-server, growth-strategy) and deferred mirror sync for all four. This task takes responsibility for the docs-check mirror sync only: after editing .agents/skills/colibri-docs-check/SKILL.md, cp it over .claude/skills/colibri-docs-check/SKILL.md to bring the mirror fully in sync (H3 + H4 combined). The other 3 skills remain deferred.
Gate summary
| Gate | Result |
|---|---|
| Total live refs to redirect | 9 |
| Files to edit (canon) | 5 |
| Files to sync by cp | 1 (colibri-docs-check mirror) |
| Files deliberately untouched | 6 (R75 audit/contract/packet/verification, CLAUDE.md, PLAN-RED.md) + 1 spawn trace |
| Expected post-edit live grep | zero hits excluding the 7 read-only files above |
| Mirror-canon diff for colibri-docs-check | empty |
Next step
Write the contract declaring the replacement pattern and mirror-sync rule.