build(ui): build core.wasm in CI, stop committing the binary (F6)
Tests · UI / test (push) Successful in 3m48s
Tests · UI / test (pull_request) Successful in 2m35s

core.wasm and wasm_exec.js are no longer tracked (untracked + gitignored).
A reusable composite action .gitea/actions/build-wasm installs TinyGo
(actions/cache'd) and runs `make -C ui wasm`; it runs in all three
frontend-building workflows — ui-test (before Playwright; Vitest uses the
fake Core and needs no build), dev-deploy, and prod-build. ui-test gains a
Go setup (TinyGo shells out to Go); the deploy workflows already had one.

Docs: ui/docs/wasm-toolchain.md, ui/README.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ilia Denisov
2026-05-22 14:29:33 +02:00
parent 9d3a652b6b
commit b729036778
10 changed files with 78 additions and 572 deletions
+4 -5
View File
@@ -7,12 +7,11 @@ node_modules/
build/
dist/
# Generated WASM bundles. The committed `frontend/static/core.wasm`
# (built by `make wasm` from `ui/wasm/`) is intentionally tracked so
# Vitest and the SvelteKit dev server have the artefact available
# without forcing every contributor to install TinyGo locally.
# Generated WASM bundle (built by `make wasm` from `ui/wasm/`). No longer
# committed: CI builds it (see `.gitea/actions/build-wasm`) and a local
# dev build runs `make -C ui wasm` once (see `ui/docs/wasm-toolchain.md`).
*.wasm
!frontend/static/core.wasm
frontend/static/wasm_exec.js
# Wails desktop wrapper (Phase 31+)
desktop/build/