lessons-reviewlisted
Install: claude install-skill HeisenbergI8/claude-harness
# Lessons Review
`.claude/.harness/candidates.jsonl` is the **episodic** layer: raw incidents captured automatically and
never injected into context. This skill is the distillation pass that turns a few of them into semantic
memory and throws the rest away.
**Throwing most of them away is the expected outcome.** Capture is generous on purpose; strictness lives
here.
## Read the backlog
```bash
node .claude/harness/candidates.mjs list
```
Read all of it before deciding anything. Patterns across entries are the point — three separate
corrections about the same thing are one lesson, and you can only see that having read all three.
## For each candidate, choose one of four
**1. Encode it as a guard.** The best outcome, and the most often skipped. If the incident is
mechanically checkable — a command that should never run, a file that should never be written, a shape
that is always wrong — write the check instead of the lesson. A guard fires every time; a lesson only
fires when its triggers happen to match.
Add it to `.claude/harness/`, wire it in `settings.json`, and **add both-direction test cases**. The
allow cases matter more than the block cases: a guard that refuses ordinary work gets switched off.
**2. Promote it to `CONVENTIONS.md`.** If it is a standing fact about the project rather than a
behaviour change — where something lives, what the registration checklist is — it belongs there, where
it is read on every planning task rather than only on a keyword match.
*