diff --git a/current/CHECKPOINT-COMPILER-API.md b/current/CHECKPOINT-COMPILER-API.md index 33addb6a..f57949b5 100644 --- a/current/CHECKPOINT-COMPILER-API.md +++ b/current/CHECKPOINT-COMPILER-API.md @@ -431,6 +431,22 @@ when reached (sentinels or accessor fns; see the design doc Risks). `List` growth; orthogonal, see `current/CHECKPOINT-METATYPE.md`.) ## Log +- **P5.8 (partial) — real-project validation: m3te + distribution build with the new pipeline (2026-06-19).** + Acceptance test for the sx-driven build pipeline. **m3te** (`~/projects/m3te`, an SDL3 match-3 game): migrated + its `build.sx` off the deleted API — `configure_build :: ()` → `() abi(.compiler)`, `opts.set_post_link_callback( + bundle_main)` → `on_build(bundle_main)` (the ONLY source change needed). Then `sx build main.sx` produces a valid + SIGNED macOS `.app` (correct `Contents/{MacOS,Resources}` layout, `Resources/assets/` bundled, links Homebrew + SDL3, passes `codesign`); `sx build --target ios-sim main.sx` produces the flat iOS `.app` (DTPlatformName= + iPhoneSimulator; system-framework "not embedded" warnings are expected/benign). So BOTH the macOS and iOS-sim + bundle paths validate end-to-end on real project code. **distribution** (`~/projects/distribution`, a + server/CLI+sqlite project, NO bundling): `make build` clean (smoke + dist binaries via `default_pipeline`'s + emit+link with C objects + vendored sqlite); `make test` 24/25 (the 1 fail, `publish_happy.sx`, is a PRE-EXISTING + stale `#foreign` parse error — that keyword is gone from the parser; unrelated to the pipeline/this session). + **m3te's `build.sx` edit is in its working tree, uncommitted (the user's repo) — reported, not committed.** + > **REMAINING P5.8:** iOS-device + Android paths still unvalidated on this host (no device identity round-trip / + > Android SDK); add `.app`/`.apk` bundle SMOKE TESTS to the corpus (needs corpus-runner support — a `.build` + > directive for a bundle dir + structure assertion + cleanup; deferred as its own focused step). m3te is now a + > repeatable real-project acceptance test in the meantime. - **P5.6 (macOS path) — `default_pipeline` drives bundling; fix issue 0125 (2026-06-19).** `build.sx` now `#import`s `platform/bundle.sx` and `default_pipeline` delegates to `bundle_main` when `bundle_path()` is set (emit+link via the shared `emit_and_link` core, then wrap the `.app`/`.apk`); else just emit+link. **Removed the