grain-confidence-reviewerlisted
Install: claude install-skill Kemetra/Seshat-BI
# grain-confidence-reviewer
The Mapping Ready gate turns on one load-bearing fact: **is the declared grain
actually unique on the data?** That fact is already measured (`profile.py`'s
`PkProof`) and the diff inputs are two committed `source-map.yaml` versions. This skill
SURFACES both for a reviewer -- a grain-confidence card and a semantic mapping diff --
and STOPS at the human seam. It deepens the shipped mapping gate (roadmap Layer 3); it
adds no new gate, no new Python, no numeric score.
## Scope boundary (read first)
- **Surfaces and STOPS.** It RENDERS evidence (a card, a diff) for a human reviewer; it
does NOT write an approval, does NOT write `Gate status: CLEARED`, does NOT edit
`source-map.yaml` to clear a finding, and does NOT pick a new candidate PK or widen a
grain on the human's behalf.
- **"Confidence" is evidence + status + blockers, NEVER a number.** No `0.87`, no auto
high/medium/low label. Grain confidence is reported as exactly ONE of the four
readiness statuses (`not_started` | `blocked` | `warning` | `pass`) with the measured
signal cited as evidence and any blockers attached (roadmap rule #9; "No fake
confidence", readiness-model.md).
- **Reuses the measured signal; re-implements nothing.** It reads `PkProof`
(`total`, `distinct_pk`, `null_pk`, `is_unique`); it never writes its own uniqueness
query.
- **Judgment calls are the human's** (Principle V): grain ambiguity, PII publish-safety,
business rollups -- surfaced, never auto-res