caveatlisted
Install: claude install-skill RubyEyedReaper/Odin-Skills
# Caveat
A caveat is a hazard met once. It is worth exactly one thing: the safeguard it buys.
**The deliverable is two artifacts, always both.** An entry in `CAVEAT.md` carrying the condition
under which the hazard recurs, and a landed safeguard — a hook, a validation check, a workflow rule,
or stated preventative guidance with a home. Recording without converting is the failure this skill
exists to prevent; a ledger of war stories teaches nobody and warns nobody.
## When this fires
- something behaved differently from how it reads — a command that succeeds while doing the wrong
thing, a flag whose absence is a decision, a default nobody chose
- an exception was discovered: this works, except when
- a hazard was met that a later session would meet the same way
- an oops or mistake moment, where the workflow pauses here before continuing
- a review, audit or postmortem produced a "careful, X does Y" with nothing behind it
## What this is not
| Skill | Its subject | Why it is not this one |
|---|---|---|
| `oops` | one incident that already went wrong | its deliverable is a check plus a counted row in `MISTAKES.md`. A caveat may be met without anything going wrong yet. Both can fire on one event — see the cycle below |
| `mistake-to-gate` | recurrence, and promotion at the fourth occurrence | it counts. This converts at the first, so nothing here is counted |
| `learn` | something that should outlive the session, on a confidence rung | a caveat is not a finding about th