selection-reportlisted
Install: claude install-skill jperrello/C0BALT_CUT
# selection-report
A read-only audit artifact: for each source, what got shipped, what was considered
and passed over, and why. Sources every field from `work/<id>/` — no Claude.
## Usage
```bash
selection-report.sh <work_dir> [output_root] # one source -> output/<slug>/_selection.json
selection-report.sh --backlog [output_root] # every work/<id> with a matching output/<slug>/
```
`output_root` defaults to `$OUTPUT_DIR` (`.env`) or `<repo>/output`.
## Inputs (all from `work/<id>/`, all optional → graceful empty sections)
- `ingest.json` — title/url/duration + the slug that names `output/<slug>/`.
- `segments.raw.json` — the produced shorts with scores + rationale (the SHIPPED set).
- `clip_NN.done.completion` — written by `start.sh` save-local; maps span N → the
delivered filename (the title differs from `title_suggestion` because `generate-title`
re-titles). Absent in the legacy `shorts.sh` path → `name: null`.
- `candidates.hint.json` — the rlm discovery menu (CONSIDERED set; absent on non-rlm
short sources → empty).
- `topics.json` — the topic chapters.
## Output `output/<slug>/_selection.json`
```json
{
"source_id": "...", "title": "...", "url": "...", "slug": "...", "duration_sec": 0,
"shipped_count": 0, "considered_count": 0, "considered_picked": 0, "topics_count": 0,
"shipped": [ { "rank", "name", "delivered", "t0","t1","cuts", "hook_type",
"opening_line","title_suggestion","rationale","topic",
"overall_score