R3: three-tier evidence report

Written 2026-09-20 (chunk 2). Deliverable, not a hypothesis; the criteria are consistency checks.

Design

report.py produces, per suspect model, a JSON and a Markdown report with three tiers, each of which can stop the chain:

Every report discloses the candidate pool and the classifier pool, and carries the sentence that a strong preference for a wrong near-relative is what a missing true teacher looks like.

Consistency criteria

Smoke test (2026-09-20, before R2 numbers)

SuspectTier 1 (gate +0.05)Tier 2Tier 3
S_r1+0.159 (r1), control -0.005: passfamily r1, 65% wins vs 17% chance, log10 E 48.9, crossed at probe 23, style mass 0.75: passstyle: r1_openr1 0.58, r1_orig 0.17 (one member in the likelihood pool)
S_qwen3+0.172 (qwen3): passfamily qwen3, 89% wins, log10 E 108, crossed at probe 14, style mass 0.80: passsingle member
S_human-0.005: stop

Reports under reports/<suspect>.{json,md}. Batch generation: make_reports.sh.