Skip to content

Stamp the web glue and module with one version - #164

Merged
cursor[bot] merged 1 commit into
mainfrom
cursor/docs-wasm-pair-5002
Sep 23, 2026
Merged

cursor[bot] merged 1 commit into
mainfrom
cursor/docs-wasm-pair-5002

Conversation

@SeanCheatham

Copy link
Copy Markdown
Owner

Why

The docs page stays blank when the browser loads a new app.wasm with an older app.js.

EM_ASM addresses are keys in ASM_CONSTS inside app.js. The Check-stage copy moves those addresses. The host caches app.js for 4 hours and app.wasm for 10 minutes. After a deploy, the new module calls emscripten_asm_const_int with an address the cached glue does not list. The lookup throws ASM_CONSTS[code] is not a function during callMain, after the loading status is hidden. The page is blank.

A matched pair boots. Seed 0 still fails because R won. Seed 128 still passes because L won.

Fix

The web package stamps app.js and app.wasm with one content version. The page loads that pair together.

Proof

The web embedder test for examples/docs checks the shared version and the walkthrough. A headless run starts the same package.

Open in Web Open in Cursor 

EM_ASM addresses live in app.js. A host can cache that file longer than app.wasm. A new module then calls an address the cached glue does not list, and the docs page stays blank. One content version loads the pair together.

Co-authored-by: Sean Cheatham <SeanCheatham@users.noreply.github.com>
@SeanCheatham
SeanCheatham marked this pull request as ready for review September 23, 2026 22:06
@cursor
cursor Bot merged commit bd46056 into main Sep 23, 2026
12 checks passed
@cursor
cursor Bot deleted the cursor/docs-wasm-pair-5002 branch September 23, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants