Compiled-game browser startup evidence
Pre-releaseReal compiled-game browser acceptance
Draft #170, source
9e6f4ab82f50db97d66385adf4c67f4e08fdae07, passes all 22 jobs in hosted
Tests run 34565354719.
The PR head and hosted merge checkout have identical Git trees. No image
baseline, quality threshold or performance budget was changed.
The new gate compiles a TypeScript game with Perry 0.5.1220 and uses Bloom's
production web bootstrap. Hosted macOS Chrome runs it against the Linux-built
engine WASM from the same source. The game renders eight frames, records one
cleanup and produces all 16,384 expected pixels in a 128x128 screenshot in
3.203 seconds. The reported adapter vendor is apple; other adapter identity
fields are empty. PNG SHA-256:
7fb15eae936902d5301cabcd6549e8d27d4022f3a484e87e680dddb7e65d8792.
A separate compiled control enters a real writeFile FFI call, where the
acceptance monitor deliberately injects
WebAssembly.RuntimeError: BLOOM_EXPECTED_STARTUP_FAILURE. The boot promise
rejects with that specific error, with neither frame nor cleanup success
markers, in 2.378 seconds. The normal game never invokes the fault marker.
Jolt is deliberately omitted from this rendering smoke; it does not qualify
browser physics, asset/text loading, or the full starter/example matrix.
The initial run 34562773758 is retained as a failure. Its existing JavaScript
renderer test passed while the compiled game timed out without progress.
Perry had returned zero despite unresolved engine imports and emitted a valid
10,870-byte WASM module without the required engine calls. The corrected
preparer installs the exact checkout as an explicit dependency, rejects those
warnings and checks the actual WASM import table. Final hosted pages contain
159 engine FFI imports. Earlier local outputs with unresolved imports are
invalid game qualification and remain in the archive.
Local recording-FFI probes retain the generated Perry runtime/WASM observations
separately from hosted rendering. They also exposed plain TypeScript throw
propagation continuing into initialization in this Perry version. The explicit
FFI fault control qualifies startup-error detection; it does not fix or qualify
general language exception propagation.
The initial Windows shared-test job also crashed despite FXC. The follow-up
serializes the Windows Rust harness and passes 489 library tests with one
existing ignored test in 297.41 test seconds. All remaining required jobs pass,
including the native engine, all 20 native example links, installed web command
and fresh installed scene/direct-2D startup captures. Both installed captures
produce all expected pixels and one cleanup on Microsoft Basic Render Driver.
Windows raster goldens skip the CPU adapter. These results qualify software
startup and a CI mitigation; they do not identify the crash's cause or prove
physical-GPU performance. Local serial results and the original access
violation log are retained.
The archive contains reports, commands, logs, captures, source changes and
per-file hashes. Generated executable/WASM/HTML payloads and installed trees
are excluded; their recorded hashes remain. ZIP CRC, every included payload's
SHA-256 and uploaded GitHub asset digests are verified by the publication
scripts. #170 remains a draft; no PR is merged or npm package released. The
RTX 4080-specific requirement remains unperformed.