# v0.3 First Run The Tenant Platform example is the fastest way to inspect the complete v0.3 substrate without mutating a cluster. ## Build From the repository root: ```sh bun install --frozen-lockfile bun run applik8s build examples/tenant-platform.ts --typekro --composition-name tenantPlatform --out-dir dist/examples/tenant-platform ``` Start with these outputs: - `dist/examples/tenant-platform/typekro/application-graph.json` — app concepts, ownership, providers, dependencies, and diagnostics. - `dist/examples/tenant-platform/typekro/resources.yaml` — the ResourceGraphDefinition and concrete Kubernetes resources. - `dist/examples/tenant-platform/typekro/template-manifests.txt` — inspectable rendered templates. - `dist/examples/tenant-platform/typekro/apply.sh` — CRD-first local apply sequence. You should find the Tenant CRD, CNPG database, model migration Jobs, repair Job, cleanup CronJob, admin server, status reconciler, RBAC, runtime modules, and durable generated-status ConfigMap. ## Verify Offline ```sh bun run test:v03:local bun run check:packages ``` The generated-artifact test is cluster-free by default. Live assertions in that file remain skipped unless live E2E is explicitly enabled. ## Verify On A Disposable Cluster The prerelease suite mutates the selected context and may install or reuse TypeKro and CNPG prerequisites. Use only a disposable local cluster: ```sh bun run check:v03:prerelease:orbstack ``` For another context: ```sh APPLIK8S_E2E_CONTEXT= bun run check:v03:prerelease ``` Generated-job state is durable in the runtime-created status ConfigMap and authoritatively projected by KRO onto the root application status. Status on applik8s-owned domain CRDs remains authoritative through the Rust host.