Production Release Gate
Production Release Gate
This checklist is a hard gate for production release. If any blocking item fails, release is paused.
Blocking Matrix
| Area | Blocking requirement | Verification |
|---|---|---|
| Routes (mobile + web) | No broken navigation or dead-end route in primary flows | Manual route walkthrough + route-specific tests |
| 2025 data integrity | Canonical 128-question bank validated with no missing IDs or answer-key failures | npm --prefix apps/mobile run audit:bank and npm --prefix apps/mobile run audit:answers |
| Bank consistency (mobile/web) | Web interview bank remains aligned with canonical mobile bank and uses 2025 set | Web tests + spot parity checks for IDs and question text |
| Localization | Core quiz/session/results flows must not rely on English fallback for supported locales | i18n parity tests + manual locale walkthrough |
| UI dark consistency | High-traffic screens share consistent dark backdrop and tokenized overlays | Visual QA on home, practice, quiz, results, settings, paywall |
| CI baseline | Typecheck, lint, test must pass | npm run ci |
Required Commands
Run from repo root unless noted:
npm run typecheck
npm run lint
npm run test
npm --prefix apps/mobile run audit:bank
npm --prefix apps/mobile run audit:answers
Recommended full gate:
npm run ci
Manual High-Risk Route Pass
Mobile
- Onboarding -> tabs entry works from clean install.
- Home tab quick actions open expected routes.
- Practice menu ->
PracticeSession-> completion flow. - Quiz menu ->
quiz/session-> completion flow (including abort/end). - Interview flow -> results -> Practice Weak Areas handoff.
- Results -> review/history filters.
- Settings -> paywall/test-access links (as capability gated).
Web
- Primary pages render:
/,/features,/pricing,/faq,/process,/contact,/privacy,/terms. - Docs routes:
/docsand nested slug routes. - API health and docs:
/api/health,/api/openapi.
Sign-off Criteria
- No Critical or High severity open issues.
- All blocking checks pass.
- Release notes updated with any behavior changes.
- Final device smoke run completed on iOS production profile.