# live-conformance/synthesis — synthesis provenance The corpus of [`extensions/synthesis.md`](../../extensions/synthesis.md) §13, in one file, `vectors.json`: the EU icons §10.2 pins (`eu_icons`, each its `file` and `sha256`), and the **vectors**, each a case of §11.1 and what a verifier gives it. A case holds its `policy` (`dual_layer`, `assistive`, `second_layer`); its records as JSON texts, list by list: `claims` (origin claims), `markings`, `detections`, `reviews`, `label_policy` (a text or `null`) and `player` (the log's entries); the `objects` it holds, each a `WAI1` envelope in hexadecimal; the `decoded` samples it holds, each the content hash of the `object` decoded and its canonical `samples` in hexadecimal; the `priors` it holds, each the bytes of a `WSR1` prior (exact-upscale §3.1) in hexadecimal; the `unmarked` frames it holds (§7.6), each the content hash of the marked `object` and its `samples` in hexadecimal; and a `room` or `null`: its `descriptor`, `grants`, `key_log` and `chains` as live-rooms' corpus gives them. **Synthesis equivalence.** For each vector, a conforming verifier reaches the outcome it states: - `refuse`: the `reason` and where, `at`: `["claim", i]`, `["marking", i]`, `["detection", i]`, `["review", i]`, `["label_policy"]`, `["player", i]`, or `["room", …]` with the room verifier's own place (`["room", "record", c, i]` for record `i` of chain `c`); - `accept`: the `statements` of §11.3: `claims`, each its `link`, `class`, `source`, `c2pa` (the statement of §6, exactly as written) and `assistive` (`proved`, `not-recomputed`, `asserted`, or `null` for a claim that is not an assist); `detections`, each its `subject` and `result`; `ai_tracks`, each its `track` and `claim`; `reviews_presented`, each its log `entry` and `review`; `labels`, each its log `entry`, `trigger` and the `shown` entry that met it; `visual_icon`, the file of §10.2 the label policy's visual is, or `null`; and `room`, the room's own outcome or `null`. A verifier that reaches another outcome, reason, place or statement does not conform. **Provenance.** `wai_synthesis_vectors gen` writes `vectors.json` from records authored in code: every key is SHA-256 of the corpus's label and an index, every sample buffer and envelope payload is SHA-256 output of a label, the one prior is drawn from SHA-256 of a label (`int_sr::seeded_prior`) and trained on nothing, every time is a constant, and Ed25519 signing is deterministic, so the file is the same bytes on every machine. The watermark scheme the markings and detections name, `wai-mark:conformance`, names no algorithm (§7.4): the corpus exercises the records and the agreement of the two layers, not a watermark. ``` python3 -I ../synthesis_verify.py . ```