{ "intent": "Act on two direct user verdicts: the statusline glyph told them nothing (drop it — the plain-words SessionStart line is the surfacing channel), and explain-diff is not needed at all (drop the skill entirely, do not compile it). Additionally stop the nudge counting candidates that already have a verdict.", "scope": [ "python_pkg/session_autopsy/report.py (handled_ids; table marks handled rows; Reviewed section renders 'dropped'; write_report excludes handled from the count)", "python_pkg/session_autopsy/cli.py (mark-reviewed uses the same handled filter)", "python_pkg/session_autopsy/tests/test_report.py (updated + new assertions)", "~/.claude side (committed separately in that repo): statusline badge removed, skills/explain-diff/ and scripts/explain_diff.sh deleted, finish skill/script references cleaned, compiled.json verdict 'dropped'.", "Non-goal: existing docs/explanations galleries stay — they are inert committed docs." ], "changes": [ "unreviewed_count now means 'significant AND not yet handled': candidates with any compiled.json verdict (compiled / keep-llm / dropped) leave the count, so resolving a candidate visibly shrinks the nudge (7 -> 4 on the real corpus).", "The ranked table's action column shows 'already handled — see Reviewed/scoreboard' for such candidates instead of re-suggesting a review.", "The Reviewed section renders dropped workflows as 'dropped (workflow removed)'." ], "verification": [ { "command": "python3 -m pytest python_pkg/session_autopsy/tests/ -q", "result": "pass", "evidence": "81 passed; report.py and cli.py at 100% branch." }, { "command": "PYTHONPATH=~/testsAndMisc python3 -m python_pkg.session_autopsy report; jq . ~/.claude/autopsy/state.json; statusline pipe-test; start-hook pipe-test", "result": "pass", "evidence": "unreviewed_count 7 -> 4 (err-549ef470, crdt-sync-migration, design-audit, update-config); statusline renders '[Fable] ~' with no glyph; SessionStart hook still prints its unchanged plain-words line (hook text untouched, so the mutation gate is unaffected)." } ], "risks": [ "A candidate marked handled disappears from the nudge even if its compiled script later regresses; the scoreboard ('measure') is the instrument that would show that.", "Historical explain-diff docs remain in repos but the tooling to regenerate their gallery index (build_index.py) was deleted with the skill." ], "rollback": [ "Revert the three python files to restore counting of handled candidates.", "The ~/.claude deletions are separate commits in that repo; git revert there restores the skill, template, and scripts." ] }