Files
vinihcrosaandClaude Opus 4.8 123180b406 ci(build): compile WASM engine before JS/TS tests
Per ADR-005 tests run against the real WASM engine, so CI must build it
first. Add a wasm-web job: pinned emsdk (cached) -> pnpm build:wasm ->
build -> lint -> test. Wire turbo so 'test' dependsOn build:wasm and
^build:wasm, and point build:wasm outputs at the @ymir/wasm runtime.

Task: task_09. Verified turbo ordering locally (rm runtime -> turbo test
rebuilds it); full pipeline runs on GitHub Actions.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-03 20:23:44 -03:00

45 lines
1001 B
JSON

{
"$schema": "https://turbo.build/schema.json",
"ui": "tui",
"tasks": {
"build:wasm": {
"outputs": ["runtime/**"],
"inputs": [
"scripts/build-wasm.sh",
"$TURBO_ROOT$/core/**/*.cpp",
"$TURBO_ROOT$/core/**/*.h",
"$TURBO_ROOT$/core/**/*.hpp",
"$TURBO_ROOT$/core/CMakeLists.wasm.txt",
"$TURBO_ROOT$/core/cmake/**"
],
"cache": true
},
"build": {
"dependsOn": ["^build"],
"outputs": ["dist/**", ".next/**", "!.next/cache/**"],
"cache": true
},
"dev": {
"cache": false,
"persistent": true
},
"test": {
"dependsOn": ["^build", "build:wasm", "^build:wasm"],
"outputs": ["coverage/**"],
"cache": true
},
"test:e2e": {
"dependsOn": ["^build"],
"outputs": ["playwright-report/**", "test-results/**"],
"cache": false
},
"lint": {
"outputs": [],
"cache": true
},
"clean": {
"cache": false
}
}
}