# V5 authored case corpus gate

This gate is the source-of-truth boundary between V5's launch-case inventory and
the human-authored, playable corpus required by V8.

The repository currently has 25 Vice Squad inventory rows plus separate 20-pack
and 8-case cold-case skeletons. Those records prove intended counts and runtime
identifiers; they do not contain complete case truth, prose, recorded
voice-over, playable assets, rights receipts, or validated deduction graphs. The
corpus manifest therefore declares `acquisition-required` and contains no case
records. This is intentional: planning metadata must not be promoted into
human-gold content.

Run an honest inventory audit:

```bash
python3 V5/tools/authored-case-corpus/validate-authored-case-corpus.py
```

Use the strict release gate before claiming V5-002 or consuming the corpus as V8
regression gold:

```bash
python3 V5/tools/authored-case-corpus/validate-authored-case-corpus.py --strict
```

Strict mode requires exactly five cases for each launch desk and at least five
held-out cases. Every case must bind canon, culprit, means/motive/opportunity,
fair-play clues, eliminable red herrings, one acyclic solution graph, timing,
assets, prose, recorded VO, outcomes, human author identity, source/asset rights
receipts, primary locale, tone/style, playable runtime evidence, and
contamination controls. Every referenced repository artifact must exist.

Audit mode exits successfully while reporting `ready: false`; strict mode exits
non-zero for the same incomplete manifest. This lets routine repository checks
preserve an accurate inventory while keeping the product/release claim
fail-closed.
