ci(web): build wasm in the deploy pipeline instead of committing it (#156) #168
Reference in New Issue
Block a user
Delete Branch "fix/156-wasm-in-ci"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #156.
solitaire_server/web/pkg/is removed from source control (~23 MB of binary artifacts per rebuild commit) and theweb-wasm-rebuildcommit-back workflow is deleted. The wasm is now built where it's consumed:wasm-builderstage insolitaire_server/Dockerfilerunsbuild_wasm.shwith the same pinned toolchain the old workflow used (wasm-bindgen-cli 0.2.120, wasm-pack 0.14.0, binaryen 130 — release URLs verified); the runtime image copiespkg/from that stage. The image build is the artifacts' single source of truth.web-e2ebuilds the wasm before Playwright (play_canvas.spec drives the real canvas), and its trigger paths now includesolitaire_web/solitaire_engine/solitaire_data/build_wasm.sh, which it silently missed before.solitaire_data/**andbuild_wasm.shnow, so every wasm-affecting master change redeploys without the intermediate bot commit.scripts/watch_deploy.shno longer waits on the deleted workflow; stale comments intest.yml,build_wasm.sh, and ARCHITECTURE.md updated./webor/playfrom a source checkout run./build_wasm.shonce;pkg/is gitignored.Notes for review: the Dockerfile stage mirrors the old workflow's proven build (same script, same pins), but the first
docker-buildrun on master is the real proving ground — the image build gets ~15-25 min slower on wasm-affecting changes (no more free ride on the committed artifacts), amortized by the buildx registry cache for server-only changes.cargo test --workspaceandcargo clippy --workspace -- -D warningsare clean (no Rust changes).🤖 Generated with Claude Code
e92fb75dd9toea8d8eee9a