Only deploy-site compiles the wasm target (scripts/build-wasm.sh). The gating it checks is easy to break: crates/path-cli/Cargo.toml carries a separate emscripten dependency table (no opencode, no cursor), and the source carries module and function cfg gates that must agree with it.
Work
- Pull-request job:
rustup target add wasm32-unknown-emscripten, then cargo check --target wasm32-unknown-emscripten -p path-cli.
cargo check does not link and the emscripten dependency set is pure Rust, so the job should not need the emsdk. If a build script demands emcc, fall back to scripts/build-wasm.sh with the cached emsdk.
- Cache cargo keyed on
Cargo.lock, matching deploy-site.
Only deploy-site compiles the wasm target (
scripts/build-wasm.sh). The gating it checks is easy to break:crates/path-cli/Cargo.tomlcarries a separate emscripten dependency table (no opencode, no cursor), and the source carries module and functioncfggates that must agree with it.Work
rustup target add wasm32-unknown-emscripten, thencargo check --target wasm32-unknown-emscripten -p path-cli.cargo checkdoes not link and the emscripten dependency set is pure Rust, so the job should not need the emsdk. If a build script demandsemcc, fall back toscripts/build-wasm.shwith the cached emsdk.Cargo.lock, matching deploy-site.