Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions docs/hygiene-history/ticks/2026/05/14/2018Z.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Tick 2026-05-14T20:18Z — 39-candidate manual triage via 9-variant taxonomy

## Refresh (step 1)
Comment on lines +1 to +3

- Rate limit: healthy.
- 8 open PRs. Mine: zero (#3219 merged).

## Holding discipline (step 2)

Per Standing-by-failure-mode rule's option list, picked: "use the tool I shipped + manually classify candidates through the 9-variant taxonomy" — demonstrates Layer A → manual Layer B workflow.

## Speculative work (step 3) — 39-candidate triage

Ran `bun tools/hygiene/audit-rule-cross-refs.ts` → 39 stale-pointer candidates. Applied the 9-variant taxonomy from PR #3200 / 1920Z shard:

### Classification breakdown

| Variant | Count | Examples |
|---------|-------|----------|
| **Bare-filename ref** (file exists; needs path prefix) | 25 | peer-call .ts files (claude.ts, kiro.ts, etc.); rule files referenced without `.claude/rules/` prefix |
| **Template path** (placeholder; instances exist) | 3 | `docs/hygiene-history/ticks/YYYY/MM/DD/HHMMZ.md` from `shard-cadence-triumph.md`, `tick-must-never-stop.md`, `otto-channels-reference-card.md` |
| **Legacy-noted ref** (rule says "cleared/retired") | 3 | `audit-lost-files.sh`, `audit-trajectories.sh`, `audit-backlog-items.sh` in `rule-0-no-sh-files.md` |
| **Conditional ref** (rule says "not yet built") | 1 | `tools/substrate-discovery/discover.ts` in `test-canary.md` |
| **Alternative-location ref** (repo uses different valid path) | 1 | `.claude/CLAUDE.md` in `test-canary.md` |
| **Transient/ephemeral** (rule says "DON'T rely on this") | 2 | `.claude/scheduled_tasks.json`, `loop-tick-history.md` in `tick-must-never-stop.md` |
| **Glob-with-dir-wildcard not yet expanded** | 1 | `tools/hygiene/audit-*.sh` in `rule-0-no-sh-files.md` (correctly retired; glob would resolve to zero files) |
| **Bare path needs `memory/` prefix** | 1 | `feedback_aaron_wwjd_cyborg_immortality_*` in `default-to-both.md` (file exists at `memory/`) |
| **REAL STALE POINTER** | 2 | Both forms of `feedback_aaron_wwjd_keeps_the_grey_in_aaron_honest_devil_lives_in_the_grey_in_numbers_2026_05_12.md` in `default-to-both.md` — already captured by B-0514 |

**Total: 39 candidates = 37 healthy variants + 2 entries pointing at the 1 real defect (B-0514).**

### Confirmation

Of the 281 cross-references the tool scans, 280 are LIVE either directly or after applying the 9-variant taxonomy classification. The 1 real stale pointer (the missing wwjd-grey-honest file) is already captured as B-0514.

**The 12-batch manual audit's conclusion (217/218 = 99.5% LIVE; 1 defect) is reproduced by the tool's Layer A + manual taxonomy application.** Confidence in the mechanization is high.

## Verify (step 4)

Each candidate manually verified via `test -e <prefix>/<filename>` where the rule-prose context suggests the proper prefix.

## Shard (step 5)

This file.

## CronList (step 6)

Sentinel `f970cb2d` armed.

## Visibility (step 7)

- **Layer A → manual Layer B workflow demonstrated**: tool produces 39 candidates; human/Otto applies taxonomy to reduce to 1 real defect (B-0514, already known)
- **False-positive rate**: 38/39 = 97% — the audit tool's Layer A is high-recall + low-precision; Layer B classification is genuinely load-bearing for triage
- **The tool's output is useful**: pointing at the exact 1 defect among 281 refs would be hard to spot manually; the candidate list is the right shape even with the false-positive density

## Notes for future-Otto

**Layer B is the highest-leverage next mechanization**. Encoding the 9-variant classification heuristics would reduce the candidate list from 39 → 1-2. Heuristics:

| Variant | Heuristic |
|---------|-----------|
| Bare-filename | If `<basename>` resolves under `tools/peer-call/`, `.claude/rules/`, `memory/`, `docs/`, etc., try that prefix |
| Template path | If contains `YYYY/MM/DD/HHMM`, check the surface directory has ≥1 instance |
| Legacy-noted | Search rule body for "cleared" / "retired" / "legacy" near the reference |
| Conditional | Search rule body for "would" / "if" / "not yet built" near the reference |
| Alternative-location | Search rule body for "alternative" / "valid" / "documented" near the reference |
| Transient | Search rule body for "DON'T rely" / "transient" / "ephemeral" near the reference |
| Anti-pattern | Search rule body for "NOT" / "instead of" / "the old way" near the reference |

These are LLM-or-regex tractable. Future Layer B implementation in `audit-rule-cross-refs.ts` would gate on this taxonomy classification before reporting a candidate as "true stale."
Loading