use-all-bundled
Canonical smoke-sample. Mounts every bundled-feature so framework-CI catches feature-coverage gaps that real apps (which mount only what they use) silently miss.
Sprint 9.8 found 12 framework bugs in a Studio deployment that all could have been caught earlier: 27 of 30 bundled features had zero integration coverage from any real app. This sample is the gate.
CI-Gate
Section titled “CI-Gate”The use-all-bundled-smoke job guards release. It boots the sample with KUMIKO_DRY_RUN_ENV=boot (no DB) so feature-wiring bugs surface before publish.
| Job | What it catches |
|---|---|
use-all-bundled-smoke | feature-wiring bugs: Object.entries(undefined), self-extension, missing-requires, schema-Validators, composeFeatures failures. No DB. Boot exits after createRegistry. |
DB-backed boot (schema apply for every bundled feature against real Postgres + Redis, dispatcher round-trip) is gated by src/__tests__/full-stack-boot.integration.test.ts in the non-blocking integration CI-job. The prod-only paths (assertSchemaCurrent, GET /health) run in packages/dev-server’s run-prod-app.integration.test.ts — not against this sample’s feature set.
Boot-test (no DB, pre-flight)
Section titled “Boot-test (no DB, pre-flight)”KUMIKO_DRY_RUN_ENV=boot \ DATABASE_URL=postgres://dummy:dummy@127.0.0.1:1/dummy \ REDIS_URL=redis://127.0.0.1:1 \ JWT_SECRET=$(openssl rand -base64 32) \ KUMIKO_SECRETS_MASTER_KEY_V1=$(openssl rand -base64 32) \ bun samples/apps/use-all-bundled/bin/main.tsExits 0 on success; any feature-wiring fault throws and exits 1.
Coverage status
Section titled “Coverage status”Every bundled-feature export is mounted except the held-back ones in EXPECTED_HELD_BACK (scripts/check-coverage.ts): utilities without defineFeature and scaffold-only features. They cannot be added to APP_FEATURES by design.
Maintenance
Section titled “Maintenance”When you add a new feature-export to @cosmicdrift/kumiko-bundled-features you MUST either:
- Mount it in
src/run-config.ts.kumiko/schema.tspicks up entities viacomposeFeatures(APP_FEATURES); runkumiko-schema generateif the schema changed. - Or, if the feature is not yet smoke-ready, add it to
EXPECTED_HELD_BACKinscripts/check-coverage.tswith a one-line reason.
CI fails otherwise via Coverage lint.
Source
Section titled “Source”📄 On GitHub: samples/apps/use-all-bundled