| README.md | Storefront quick start, stack, architecture diagram, demo warnings |
| docs/architecture-map.md | Procurement-oriented system map (workflows, RBAC, retention, integrations stub) |
| docs/workflow-depth.md | Incident/CAPA transitions, audit_log, AI boundary |
| docs/procurement-readiness.md | Positioning, ROI worksheet, pilot/moat narrative (honest scope) |
.env.demo.example | Copy/paste env for Docker demo |
docker-compose.demo.yml | Postgres + pgvector for local demo |
.devcontainer/ | Codespaces / Dev Container with Postgres + post-create migrate/seed |
scripts/seed-demo.ts | Full demo bootstrap (user + RBAC + domain fixtures) |
scripts/lib/seed-shared.ts | Shared RBAC/org/site helpers for seeds |
scripts/reset-demo-org.ts | Tear down demo-scoped rows and re-seed |
scripts/migrate.ts | Programmatic Drizzle migrate (clear errors); npm run db:migrate |
scripts/demo-up.ts | npm run demo:up — compose up, wait for DB, migrate, db:seed:demo |
scripts/lib/load-env.ts | Loads .env.local then .env for CLI scripts |
scripts/lib/demo-scope.ts | [Demo] title matching (PostgreSQL LIKE escape) |
scripts/lib/openai-narrative.ts | Optional OpenAI rewrite for seed copy (no server-only) |
src/app/api/health/route.ts | GET /api/health — JSON liveness + DB ping |
src/instrumentation.ts | Rejects DEMO_MODE when VERCEL_ENV=production |
src/lib/env.ts | DEMO_MODE, DEMO_*, DATABASE_USE_PG, NEXT_PUBLIC_DEMO_MODE |
src/app/(auth)/sign-in/ | Demo quick sign-in server action + optional CTA |
src/server/trpc/init.ts | DEMO_READ_ONLY guard on protectedMutation |