Test commands in run_project_tests now use wait-timeout to enforce a
600-second ceiling, preventing hung processes (e.g. Playwright with no
server) from blocking the merge pipeline indefinitely. Also disables
e2e tests in script/test until the merge workspace can run them safely.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add Makefile with build-macos and build-linux targets
- build-macos: cargo build --release (native macOS binary)
- build-linux: cross build --release --target x86_64-unknown-linux-musl
(produces a fully static binary via Docker/cross; zero dynamic deps)
- Document cross-platform build process in README.md including
how to verify macOS dynamic deps (otool -L) and Linux static
linking (file + ldd)
- reqwest 0.13 already uses rustls by default (no OpenSSL); verified
in Cargo.lock – no Cargo.toml changes needed
- Add unit tests to http/assets.rs covering:
- SPA fallback routing for non-asset paths
- 404 for missing assets/ paths
- Panic-free behaviour on empty path
- rust-embed EmbeddedAssets iter compiles and runs correctly
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>