# Linear-Film Conformance Corpus Vectors for the linear-film extension (`wai.film.linear`). The criterion is **film-equivalence**: given the same film, a conforming sink MUST compute the identical per-frame identity — `BLAKE3(world state hash at the frame's tick || the interpolated camera pose)` — hence the identical per-frame hashes and the identical Merkle root over them, on every machine, no tolerance parameter. **Provenance.** Generated here: `wai_film_vectors gen` writes every vector from shots authored in code. No footage. A film composes two things already proven elsewhere: the embedded world's **replay-equivalence** (every sink agrees on the state hash at every tick — the `world-conformance/` corpus) and the `wai.det.fixed64` camera track (interpolated trig-free, like the splat/skeletal tracks). The render — the actual pixels — is the sink's presentation, not the verified quantity. ## Layout - `vectors/.wflm` — the `WFLM` container: a film contract, an embedded sealed `wai.world.replay` (`WWLD`), and a camera track. - `expected_hashes.json` — per film: `frames`, `start_tick`, `ticks_per_frame`, `film_hash` (identity), and `frames_root` (the Merkle root over the per-frame reconstruction hashes — the conformance quantity). Vectors (each a complete film/reel in ~1 KB — the world plus the camera(s)): - `dolly` — one subject drifting; the camera dollies from behind to the side. - `twoshot` — two subjects moving apart; the camera holds, then pushes in (a two-leg move). - `rise` — a subject climbing; the camera cranes up and tilts (a quaternion lerp), starting at a non-zero tick. - `character` — the embedded world is a skeletal humanoid (the avatars sim) waving; film composes with avatar. - `coverage` (`.wrel`, a **reel**) — the character beat cut three ways: a wide establishing shot, a low push-in, then a cut **back in time** to a high angle on the same moment. `kind: "reel"` in the manifest, checked against `reel_hash` + `frames_root`. ## Running ``` cd ../wai-rs cargo run --features film --bin wai_film_vectors -- verify ../film-conformance cargo run --features film --bin wai_film_vectors -- gen ../film-conformance # regenerate ``` Pass = film-hash + frames-root + frame-count equality, on every machine.