Platforms and Packaging

Status: implemented repository packaging model; native preparation is environment-dependent.

Samples are executable evidence, not alternate Core implementations. This page follows Core and capability architecture. Each sample keeps its application declaration, focused tests, and where needed its exact dependency lock and platform manifest.

One authored frontend

Browser, Capacitor, and Tauri samples share sandbox/app/<app>/www/. www/index.html loads platform.js before Sercrod and the capability adapter. Browser platform.js is a no-op marker; a selected native build supplies its local Capacitor or Tauri platform entry. Application HTML does not choose a backend.

Ownership protects generated state

capacitor.bat is the canonical Capacitor entry; build.bat is its compatibility shortcut; tauri.bat is the Tauri entry. They share a local build lock and keep native projects as distinct owned artifacts.

Tauri preparation uses the declared exact dependency baseline, retains frontendDist at shared www, and refuses destructive reconciliation when managed-state ownership, permissions, plugins, or dependency versions are unknown or inconsistent. Locks, manifests, and generated native state are packaging contracts, not application HTML APIs.

Windows Tauri device-validation note

Windows device validation depends on the selected native environment and its installed prerequisites. It is a platform-specific confirmation step, not a reason to treat the implemented packaging model as unavailable.

Evidence

Status: implemented.

Evidence: public build-environment reference, docs/spec/external-capability-adapter-architecture.md, sandbox/app/*/app.json, sample-local package locks, and focused build-contract tests.