Reference: Multi-Platform Build Flows¶
This page is the Diataxis reference entry for the current multi-platform build matrix that underpins the Git LFS migration.
Canonical Source¶
What This Reference Covers¶
- source web build and explicit full-graph build behavior
- desktop Tauri dev/bundle flow and sidecar ownership
- Android Capacitor packaging flow
- Android Tauri native runtime/build flow
- GitHub Release, npm publish, and docs-site delivery pipelines
Current High-Signal Conclusions¶
- The default source build contract is runtime-first.
- Explicit full-mode remains supported, and Tauri full bundles now preserve that mode through
beforeBuildCommand. - Desktop bundles still treat sidecar binaries as a separate bootstrap concern.
- Mobile packaging and mobile runtime capability must be evaluated separately.
- Docs and npm publish pipelines are already compatible with the current no-new-LFS direction.
- Release smoke on 2026-04-08 already proved the workflow can cold-create and seed the project-controlled
godot-mirror-v4.3-stabletag before desktop bundle jobs run. - The current release workflow now pins the mirrored Windows, Linux, and macOS Godot archives with fixed SHA256 values before use.
- The same release workflow now exposes
allow_godot_upstream_fallbackso mirror-only smoke runs can disable upstream fallback without changing the default release path. - A non-blocking release-governance risk remains: GitHub Actions currently warns that
actions/upload-artifact@v4andsoftprops/action-gh-release@v2are still Node 20-targeted.
Use This Reference When¶
- deciding whether a migration item is safe across desktop, mobile, publish, and release surfaces
- checking whether a build command is runtime-first or explicit full-mode
- verifying whether a platform still depends on repo-head LFS assets
Related Docs¶
Mobile Slim Contract (2026-08-17)¶
mobile-slim is now a real packaging profile, not only an export label.
npm run mobile:prepare:slimbuilds the runtime-first frontend, stages onlydist/mobile-slim/frontend, removes generated graph payloads, desktop-only Mermaid/GPU assets, SVG files, model files, and binary sidecars, then emitsdist/mobile-slim/mobile-slim-manifest.json.- The same staged directory is consumed by Capacitor through
NOTE_CONNECTION_MOBILE_WEB_DIRand by Tauri Android throughsrc-tauri/tauri.android.conf.json. Tauri Android no longer builds a Node sidecar on the slim path. - The mobile runtime loads the local
graph_data.jsonthrough the storage boundary and exposes bounded exact lookup, neighbor inspection, and directed shortest-path operations throughqueryKnowledgeBaseExact()andfindKnowledgePath(). The analyzer retains projected node metadata, not document bodies. mobile-slimdeclares local ingest and exact query as available, remote inference as optional, SVG materialization as unsupported, a 25 MiB estimated compressed asset gate, and a 256 MiB low-memory RSS gate.- The static verifier reports estimated ZIP-deflate bytes and fails on forbidden artifacts. RSS is
not-measureduntil a device evidence JSON is supplied; a passing static gate is not a device acceptance claim. - Godot Pathmode is an extended opt-in (
NOTE_CONNECTION_ANDROID_INCLUDE_GODOT_PATHMODE=1). The default Android runner disables generated Godot bridge files, dependency declarations, andpath_modeassets so stale generated scaffolds cannot silently inflate a slim build.
This slice intentionally does not claim mobile-local LLM parity or SQLite persistence. The current mobile projection is an exact in-memory index over a bounded local graph; SQLite-backed persistence and full agent conversation parity remain subsequent phases with separate contracts.