data-checklisted
Install: claude install-skill kayspiegel/survey-insight-skills
# Data-Quality Check
Goal: **Before** any substantive analysis, assess how trustworthy the data is, so that weak
data doesn't lead to strong conclusions. Result as Markdown in `reports/`. A path in the
user's request selects the CSV; otherwise the one in the folder.
## Tool
```
python3 scripts/survey.py quality [--file CSV]
python3 scripts/survey.py profile [--file CSV]
python3 scripts/survey.py freq COL [--file CSV]
```
Run these from the project root. If `scripts/survey.py` is not there, check `.claude/scripts/survey.py` or locate `survey.py` in the project.
`quality` directly returns:
- **Fill rate per column** (thin columns < 50% flagged),
- **Completion time** (median, range) and **speeders** (< 1/3 of the median duration),
- **Straightlining** in detected rating batteries (identical answer across ≥3 shared scales).
`freq` is needed only to verify a suspected contradiction with the survey context (see
below), not for the quality metrics themselves.
`--json` for structured values.
## Survey context
If a context document sits next to the CSV (`<name>.context.md`, or `survey-context.md`
when the folder holds exactly one CSV), read it — and then do something no other skill
does: **check it against the data.** Everywhere else the context is background; here it is
a claim under test.
A contradiction between what the context states and what the data show is a **finding in
its own right**, often a more serious one than a handful of speeders:
- **Population vs. behavior