Gate owner: QA Lead + Release Captain. Required for §33.3. Source-of-truth
coverage matrix: libs/oshun/analytics/src/v1-33-launch-gate-signoff.ts,
apps/oshun/web/e2e/support/critical-web-journeys.ts, and the per-journey
Playwright / mobile / unit / integration artifacts referenced below.
This document maps every literal step of the 14 critical journeys named in
V1/TODOS.md §33.3 to executable evidence. The launch gate closes only when
every step has green evidence on the release tag. The machine-readable gate
is locked by
libs/oshun/analytics/src/__tests__/v1-33-launch-gate-signoff.test.ts, which
fails if any listed artifact disappears or any expected test title drifts.
The customer-web journey-coverage gate is additionally enforced by
apps/oshun/web/e2e/critical-web-journey-coverage.spec.ts, which fails the
suite when any keyboard / accessibility / visual / resilience reference goes
missing.
1. Tara — ritual start → pause → resume → completion → reflection#
| Step |
Spec |
Test name fragment |
| Start ritual |
apps/oshun/web/e2e/tara-full-journey.spec.ts |
"session card → player" |
| Pause |
same |
"play/pause controls" |
| Resume |
same |
"resume from paused timer" |
| Completion |
same |
"completion screen" |
| Reflection capture |
same |
"reflection prompt + persistence" |
Mobile parity:
apps/oshun/mobile/e2e/flows/shell/tara-home-quick-start-completion.yaml (start
→ completion) plus
apps/oshun/mobile/e2e/flows/shell/tara-post-session-reflection.yaml
(reflection capture).
2. Arete — daily check-in → habit complete → weekly review#
| Step |
Spec |
| Daily check-in |
apps/oshun/web/e2e/arete-full-journey.spec.ts |
| Habit complete (streak update) |
same |
| Weekly review workspace |
apps/oshun/web/e2e/arete-plan-review-workspace.spec.ts |
3. Veritas — briefing → claim inspect → source drill → counterclaim#
| Step |
Spec |
| Briefing read |
apps/oshun/web/e2e/veritas-full-journey.spec.ts |
| Claim inspect |
same |
| Source drill |
same |
| Counterclaim view |
same |
4. Nyx — tonight view → save event → calendar sync → reminder fires#
| Step |
Spec |
| Tonight view |
apps/oshun/web/e2e/nyx-full-journey.spec.ts |
| Save event |
same |
| Calendar sync round-trip |
apps/oshun/web/e2e/nyx-full-journey.spec.ts ("save event") + libs/nyx/events/src/calendar-sync.spec.ts |
| Reminder fires |
libs/iris/agents/proactive/reminders/src test suite + the nyx-tonight synthetic monitor row in docs/launch/post-deploy-monitoring.md §3 |
Coverage note: Calendar sync round-trip is verified at the library level by
libs/nyx/events/src/calendar-sync.spec.ts (deterministic, repeatable). The web
journey verifies the "save event" surface; the device-level reminder fire is a
synthetic monitor in docs/launch/post-deploy-monitoring.md §3.
5. Nisaba — passage open → annotate → notebook capture → mobile resume#
| Step |
Spec |
| Passage open |
apps/oshun/web/e2e/nisaba-reading-compare-annotate.spec.ts |
| Annotate |
same |
| Notebook capture |
same |
| Resume on mobile |
apps/oshun/mobile/e2e/flows/nisaba-study-suite.yaml |
6. Metis — BYOM ingest → grounded course → tutor session → assessment → mastery#
| Step |
Spec |
| BYOM ingest |
apps/metis/web/e2e/critical-paths.spec.ts ("BYOM ingest") |
| Grounded course generation |
same ("grounded course generation") |
| Tutor session |
same ("tutor session") |
| Assessment |
apps/metis/web/e2e/assessments.spec.ts |
| Mastery update |
apps/metis/admin/e2e/admin-critical-flows.spec.ts |
7. Studio — author draft → bind sources → request review → apply → publish gate → rollback with public change note#
| Step |
Spec |
| Author draft |
apps/oshun/web/e2e/studio-authoring-workspace-smoke.spec.ts |
| Bind sources (Sophia grounding) |
apps/yemaya/studio-web/e2e/studio-web.smoke.spec.ts ("sophia store") |
| Request review |
apps/oshun/web/e2e/studio-review-approval-workflows-smoke.spec.ts |
| Apply changes |
same |
| Publish gate |
apps/oshun/web/e2e/studio-launch-readiness-governance-smoke.spec.ts |
| Rollback with public change note |
libs/shared/release-management/src/rollback-plan.spec.ts + apps/oshun/web/e2e/studio-launch-readiness-governance-smoke.spec.ts |
Coverage note: Studio publish-rollback with public change note is exercised
at the library level by rollback-plan tests (topological rollback planner +
change-note generator) and at the UI level by the launch-readiness-governance
smoke spec. Each listed step is independently required by the V1 gate and locked
by the §33.X signoff manifest.
8. Agentic AI Studio — invoke → plan/DAG → pause/redirect → approve → publish → replay with audit#
| Step |
Spec |
| Invoke agent |
apps/oshun/admin/e2e/agentic-operations-flows.spec.ts |
| Inspect run plan/DAG |
same |
| Pause / redirect |
apps/oshun/admin/e2e/copilot-lifecycle-flows.spec.ts |
| Approve gate |
apps/oshun/admin/e2e/high-risk-approval-flows.spec.ts |
| Publish output |
apps/oshun/admin/e2e/copilot-lifecycle-flows.spec.ts |
| Replay run with audit bundle |
libs/oshun/agentic-studio test suite + apps/oshun/admin/e2e/copilot-audit-invariants.spec.ts |
Coverage note: Agent run replay + audit-bundle download is verified at the
library level (replay determinism + bundle completeness) and at the UI level by
the copilot-audit-invariants spec exercising audit-bundle download from the
AgenticOperationsPanel.
9. Assistant — persona switch → grounded answer → memory update → privacy pause#
| Step |
Spec |
| Persona switch |
apps/oshun/web/e2e/assistant-continuity-journey.spec.ts |
| Grounded answer |
apps/oshun/web/e2e/assistant-grounding-state.spec.ts |
| Memory update |
apps/oshun/web/e2e/assistant-continuity-journey.spec.ts |
| Privacy pause toggle |
apps/oshun/web/e2e/assistant-continuity-journey.spec.ts |
10. Support / Billing — upgrade → metered usage alert → payment failure grace → support case → refund/credit decision → audit trail#
| Step |
Spec |
| Upgrade |
apps/oshun/web/e2e/billing-plan-management-flows.spec.ts |
| Metered usage alert |
apps/iris/developer-portal/src/usage-billing.test.ts + apps/oshun/web/e2e/customer-paywall-upgrade-surfaces.spec.ts |
| Payment failure grace |
apps/oshun/web/e2e/billing-plan-management-flows.spec.ts ("pending-cancel") |
| Support case |
apps/oshun/admin/e2e/support-case-handling-flows.spec.ts |
| Refund / credit decision |
apps/oshun/admin/e2e/support-case-handling-flows.spec.ts |
| Audit trail |
apps/oshun/admin/e2e/audit-log-explorer-flows.spec.ts |
11. Privacy — DSAR end-to-end (export + delete + restore-blocked + audit)#
| Step |
Spec |
| Export |
apps/oshun/admin/e2e/privacy-dsar-end-to-end.spec.ts |
| Delete |
apps/oshun/admin/e2e/privacy-deletion-workflow-flows.spec.ts |
| Restore-blocked-where-applicable |
apps/oshun/admin/e2e/privacy-retention-exception-flows.spec.ts |
| Audit |
apps/oshun/admin/e2e/privacy-audit-log-flows.spec.ts |
12. Tenant — SSO login → SCIM sync → OneRoster import → custom role → audit explore → data export#
| Step |
Spec |
| SSO login |
tests/security/tenant-isolation/bff-tenant-isolation.security.test.ts + libs/oshun/tenant-console/src/identity/sso.ts test suite |
| SCIM sync |
libs/oshun/tenant-console/src/identity/scim.ts test suite |
| OneRoster import |
libs/oshun/tenant-console/src/bulk-ops/bulk-export.test.ts (OneRoster format) + apps/oshun/bff/src/admin/admin-bulk-exports-store.test.ts |
| Custom role assignment |
apps/oshun/admin/e2e/tenant-living-scenes-governance.spec.ts ("rbac roles") |
| Audit explore |
apps/oshun/admin/e2e/audit-log-explorer-flows.spec.ts |
| Data export |
apps/oshun/admin/e2e/cross-workspace-export-continuity-flows.spec.ts |
13. Public distribution — public page → app-store deep link → auth handoff → app link open → minimum-version/forced-update → status banner#
| Step |
Spec |
| Public page |
apps/oshun/web/e2e/lilith-public-routes.spec.ts |
| App-store deep link |
apps/oshun/web/e2e/canonical-deep-links.spec.ts |
| Auth handoff |
apps/oshun/web/e2e/auth-entry-flows.spec.ts |
| App link open |
apps/oshun/web/e2e/canonical-deep-links.spec.ts |
| Minimum-version / forced-update |
apps/oshun/web/e2e/pwa-install-update-offline.spec.ts |
| Status banner |
libs/oshun/tenant-console/src/status-page library tests + status-banner component test |
14. Admin — queue triage → review approve → publish gate → audit trail → kill-switch fire → fallback recovery#
| Step |
Spec |
| Queue triage |
apps/oshun/admin/e2e/unified-inbox-flows.spec.ts |
| Review approve |
apps/oshun/admin/e2e/review-decision-flows.spec.ts |
| Publish gate |
apps/oshun/admin/e2e/policy-approval-promotion-rollback-flows.spec.ts |
| Audit trail |
apps/oshun/admin/e2e/audit-log-explorer-flows.spec.ts |
| Kill-switch fire |
apps/oshun/admin/src/components/AgenticOperationsPanel.tsx (data-kill-switches-armed + /api/admin/agentic-operations/kill-switches) + apps/oshun/admin/e2e/incident-orchestration-flows.spec.ts |
| Fallback recovery |
docs/runbooks/shell-outage.md drill + docs/runbooks/provider-failover.md drill |
15. Composite coverage closure#
Some journeys cross web, admin, mobile, service, and governance substrates. For
those journeys, V1 signoff is step-level rather than single-spec: every literal
step below must have executable evidence, and every referenced artifact is
locked by v1-33-launch-gate-signoff.test.ts.
| Journey |
Evidence chain |
Required closure for V1 gate |
| Studio (publish → rollback → change-note) |
Studio Playwright smoke + release-management rollback tests |
Publish gate, rollback planning, and public change-note evidence are all green on the release tag |
| Agentic AI (replay → audit-bundle) |
Agentic ops Playwright + Agentic Studio unit/integration tests |
Invocation, plan inspection, approval, output update, and audit-bundle evidence are all green |
| Support/Billing (metered usage alert) |
Billing Playwright + support admin Playwright + audit explorer |
Upgrade, usage alert, grace state, support case, refund/credit metadata, and audit trail evidence are all green |
| Tenant (SSO + SCIM + OneRoster) |
Tenant Console identity, SCIM, bulk export, admin audit/export tests |
SSO, SCIM, OneRoster, role governance, audit exploration, and export evidence are all green |
| Public distribution (min-version + status banner) |
Public-route Playwright + deep-link Playwright + status-page tests |
Public entry, app link, auth handoff, minimum-version path, and status-banner evidence are all green |
Each row's required closure must hold on the release tag for §33.3 signoff.
Lacking closure, the journey is not a V1 gate pass and the release captain
re-opens scope.
16. Live verification checklist (signoff requires all)#
Evidence committed at
docs/releases/v1/verification/critical-journeys/YYYY-MM-DD.md.
17. Cross-references#
- Automation matrix:
docs/testing/automation-matrix.md.
- Coverage support:
apps/oshun/web/e2e/support/critical-web-journeys.ts.
- 33.X signoff manifest:
libs/oshun/analytics/src/v1-33-launch-gate-signoff.ts.
- Go/no-go:
docs/launch/go-no-go.md.
- Exit criteria signoff:
docs/launch/exit-criteria-signoff.md.