The integer-synthesis decoder (wai.neural.int_synth) is the one neural path that can make WAI's promise — bit-identical output on every machine, no tolerance — because it is pure i64 arithmetic, not float ONNX. It had a constructed-in-test golden but no committed fixtures and was not in the pure-Rust conformance matrix (it was buried in the ort-gated `neural` module, so it couldn't build without ONNX Runtime). Extract it to the crate root behind a light `neural_int` feature (serde_json + blake3, no ort): self-contained IntSynthError/IntImage, identical i64 decode. `neural` now pulls neural_int in and keeps a thin shim mapping onto its DecodedImage/DecodeError, so the ort-backed dispatch is unchanged. The byte-exact-conformance crate's #[path] include follows the move (its independent constructed golden still holds — a second implementation path). Add wai_int_synth_vectors (gen/verify) + a committed neural-conformance/ corpus: three realistic multi-layer decoders (distinct shapes, integer-ReLU stacks), authored from a fixed SplitMix64 sequence, each frozen to a domain-prefixed BLAKE3 of its decoded RGB. The wai-conformance workflow runs the verify on the four-platform matrix (x86-64 + arm64 across Linux, macOS, Windows) with no ONNX Runtime present — the integer-exact contract proven on real silicon, every push. The float decoders are deliberately excluded: their ONNX synthesis is float, so a byte-equality corpus would be a false promise for them. Co-Authored-By: Claude Opus 4.8 <[email protected]>
780 B
780 B