Proof, not a promise
The Determinism Receipt
Most Canvas tools generate. This one renders.
The SynthWave engine is deterministic — same preset, same seed, same frames. Not visually similar, bit-identical. We proved it the only way worth proving: an identical render on two machines with different CPUs, every output frame hashed with SHA-256.
| Machine A — production | Machine B — local | |
|---|---|---|
| CPU | Railway cloud container (Linux, x86_64) | Intel Core Ultra 7 256V |
| OS | Linux (containerized render worker) | Windows 11 Home (10.0.26200) |
| Engine | @seedframe/engine 0.12.1 · @seedframe/canvas 0.15.0 | @seedframe/engine 0.12.1 · @seedframe/canvas 0.15.0 |
| Preset · seed | canvas/chrome · 3487952549 | canvas/chrome · 3487952549 |
| Frames rendered | 180 | 180 |
| Frame-set SHA-256 | 42bf93f3cd941653f6d592f8f4986abbe8f6580e686ba07908deb4a29dd8b65f | |
| Result | IDENTICAL — 180 / 180 frames match | |
Run of 2026-08-28: production render job 972a4a26 vs a local re-render on a Windows laptop. CHROME is a pure procedural loop — the same 180 frames on any machine, no track or cover art. Frame-set hash = SHA-256 over the ordered concatenation of all 180 per-frame SHA-256 hashes.
Why an artist should care
Your catalog holds together. Render single #7 on the same preset and seed as single #1 and the two Canvases belong to each other. Consistency is a brand, and you can’t build one on a slot machine.
A re-render is free insurance. Lost the file, need four seconds instead of six, want a different crop — run it again. It comes back the same.
Nothing drifts under you. No model update can quietly change what your art looks like six months from now.
Clips inherit the proof
A TikTok / Reels / Shorts clip cut from a Canvas isn’t a new render — it’s the same frames, stream-copied whole loops at a time, with your audio muxed in. No re-encode means the two-machine frameset hash above covers every clip derived from that Canvas, byte for byte. The clip’s manifest names its source render and carries the inherited per-frame hashes.
Verify it yourself
Every render ships a manifest next to the MP4: input hash, preset, seed, engine version, and a per-frame SHA-256 list. Run it again on your own machine. Compare. If the hashes ever differ, that’s a bug and I want the report.
Reproducibility is the receipt. Everything else is a vibe.
Validated against Spotify’s Canvas guidelines as of 2026-07-17.