retail-validatelisted
Install: claude install-skill Kemetra/Seshat-BI
# retail-validate
`seshat check` proves everything provable from committed text. `retail validate`
proves the four things only a running database can show, on the MATERIALIZED rows
(constitution Principle VIII). This skill runs it and
maps each finding to the one place to fix it -- the live sibling of
`retail-govern`.
## Scope boundary (read first)
Invoke-and-interpret only. This skill runs the live checks and explains findings;
it does NOT write or fix silver/gold SQL, does NOT call pbi-cli, and does NOT
auto-loop. The live run needs a DB and is the user's call; you report and stop.
## Prerequisites
- silver + gold are materialized for the table.
- A reviewed `mappings/<table>/source-map.yaml` exists (the targets are derived
from it -- table, PK, FK, measures).
- The optional `db` extra is installed (`pipx inject seshat-bi psycopg2-binary`, or `pip install "seshat-bi[db]"`) and a DSN is
configured (`DATABASE_URL` or the `ANALYTICS_DB_*` vars in the gitignored
`.env`). Never commit a real DSN.
## Run it
```
retail validate --source-map mappings/<table>/source-map.yaml
```
The connection is host-agnostic (any Postgres: local / remote / DigitalOcean /
other) and READ-ONLY (the session is opened read-only; the checks only SELECT).
Exit is non-zero iff any check finds a defect.
## Read a finding
Each is a `Finding(rule_id, severity, message, locator)`. Live findings are
`ERROR` (proven defects -- a real PK duplicate, a real orphan, a real penny
mismatch), unlike t