# live-conformance/direction — direction records The corpus of [`extensions/direction.md`](../../extensions/direction.md) §14, in one file, `vectors.json`: the model file its layers are generated with (`models`, its `sha256` and its `file` as text), the pictures given as they are (`pictures`, each its `sha256` and its `rgb8` buffer in hexadecimal), the framing measure of §7 alone (`measures`, each a `frame` size, a `box` and the `size` and `position` it measures), the interpolations of §5.2 alone (`interpolations`, each its `interp`, its `from` and `to` values, `n` and `d`, and its `value`), and the **vectors**, each a case of §12.1 and what a verifier gives it. A case holds its `policy` (`require`); the directed `output` record and the direction `records` it holds, each as a JSON text; the `models` it holds, each by the SHA-256 of a file in `models`; and the `pictures` it holds, each by the SHA-256 of a buffer in `pictures`. Frames are 64 × 36 pixels at 24 frames a second, so every frame of every exact case recomputes. **Direction equivalence.** For each vector, a conforming verifier reaches the outcome it states: - `refuse`: the `reason` and where, `at`: `["output"]`, `["record", i]`, `["direction", k]`, `["layer", i]`, `["clip", i]`, `["clip", i, t]`, `["timeline"]`, `["timeline", i]`, `["governs", i]` or `["policy"]`; - `accept`: the `statements` of §12.4: the directed output's link hash (`output`); its `status`, `generator` and `class`; each direction record's `kind`, `link`, `director` and `levels`; each element's `record`, `element`, `level`, `director` and governed `frames`; the `cuts`; the frame map, one entry per output frame, with the frames it `shows` and who it is `directed_by` at each level; the SHA-256 of every output frame's `RGB8` samples (`frame_sha256`), or `null` where the outcome is attested; each layer's status (`layers`); and the C2PA statements of §11.1 (`c2pa`), each its director and its JCS text. A verifier that measures another class, interpolates another value, or reaches another outcome, reason, place or statement does not conform. **Provenance.** `wai_direction_vectors gen` writes `vectors.json` from records authored in code: every key is SHA-256 of the corpus's label and an index, the drawn reference picture is SHA-256 output of a label, every other picture is made by `wai.generate.spectral` with the model file of its conformance vector (`wai-rs/tests/vectors/generate/generate_spectral_model.json`, held here byte for byte in `models`), the attested case's frames are SHA-256 output of a label, every time is a constant, and Ed25519 signing is deterministic, so the file is the same bytes on every machine. Every picture is named by the SHA-256 of its `RGB8` samples, and every output frame of an exact case by the SHA-256 stated in `frame_sha256`. ``` python3 -I ../direction_verify.py . ```