A bundle is full of HashMaps — rooms, scripts, sprites, every prop's msgs — and Rust randomizes their iteration per process, so exporting an unchanged game twice produced two different files. These are committed build outputs; a diff should mean the game changed. Serializing through serde_json::Value fixes it at every depth in one hop, because Value is BTreeMap-backed by default. Three consecutive exports are now byte-identical, and the golden replay is unchanged. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| tests | ||
| Cargo.toml | ||