Skip to main content

M11: Launch Readiness — v1.0.0

Phase: P3: Launch Target: Weeks 33–38 Sprints: S16 (Weeks 33–34, shared with M10), S17 (Weeks 35–36), S18 (Weeks 37–38) Release: v1.0.0 — production deployment


Phase Context

Goal: Subscription billing, Come Follow Me integration, polish, and founding-user onboarding. Ship the product.

Key constraint: Billing/entitlement must be rock-solid. A user who pays must immediately get access. A failed payment must immediately revoke.


ZenHub Configuration

FieldValue
MilestoneM11: Launch Readiness
Due Date2026-11-29
Default PipelineProduct Backlog
Primary Epic(s)User Onboarding, UI Polish & Performance, Production Infrastructure, Legal & Compliance

Prerequisites

PrerequisiteSourceWhy Needed
M10: Monetization completeP3Billing and entitlements must be operational before production launch
M05: Staging environmentP1Production environment builds on staging infrastructure patterns
All prior milestones (M00–M10)P0–P3All features, services, and infrastructure must be complete

Epic: User Onboarding

2 story areas. First-time and returning user experience flows.

Story AreaScopeSpec Reference
Onboarding flow3-act: reading plan → personalize → first passage with tutorialDESIGN-SYSTEM.md § Onboarding
Returning user routingLast reading position resumeDESIGN-SYSTEM.md § Onboarding

Issues — User Onboarding

IssueTitleStatusNotes
M11-001Onboarding Flow — Three-Act First Open Experience✅ DoneThree-act flow (intro → question → walkthrough), CoachMark component, OnboardingGate, 5 walkthrough scripts. PR #966
M11-002Returning User Routing — Last Reading Position Resume✅ DoneReading position resume from Dexie, 7-day welcome back whisper card. PR #966

Epic: UI Polish & Performance

7 story areas. Production-quality web experience.

Story AreaScopeSpec Reference
PWA optimizationService worker, manifest, offline cache, home-screen installMVP.md § Feature #8
Offline data cachingCache recently read books for offline access via service workerMVP.md § Feature #8
Performance auditCore Web Vitals, time-to-interactive on scripture pages
AccessibilityKeyboard navigation, screen reader, ARIA labels, color contrastDESIGN-SYSTEM.md § Accessibility
Error handlingGlobal error boundaries, API error states, offline fallbacks
SEOMeta tags, OG images, structured data for scripture passages
AnalyticsEvent tracking for leading indicatorsMVP.md § Leading Indicators

Issues — UI Polish & Performance

IssueTitleStatusNotes
M11-003PWA Optimization — Service Worker, Manifest, and Home-Screen Install✅ DonePR #963 — all criteria met; PWA icons are placeholder .gitkeep; Lighthouse audit deferred to host machine
M11-004Offline Data Caching — Recently Read Books for Offline Access✅ DonePR #963 — Cache API with TTL+LRU, prefetch hook, OfflineStorage UI, OfflineIndicator in TopBar
M11-005Performance Audit — Core Web Vitals and Time-to-Interactive🔶 PartialBaseline doc, code splitting, Lighthouse CI, TanStack Query stale times done; live Lighthouse scores TBD (requires hosted env)
M11-006Accessibility Audit and Remediation — WCAG 2.1 AA Compliance✅ DoneFocus indicators, ARIA landmarks, dir=rtl, reduced-motion, axe-core CI, ConstellationView text alt, contrast audit, left-hand mode. PR #965 + remediation PR
M11-007Error Handling — Global Error Boundaries, API Error States, and Offline Fallbacks✅ DonePR #963 — Sentry, three error boundaries, ApiErrorState, exponential backoff, loading.tsx skeletons; query hook integration pending
M11-008SEO — Meta Tags, OG Images, and Structured Data for Scripture Passages✅ DonePR #964
M11-009Analytics — Event Tracking for Leading Indicators✅ DonePostHog abstraction, AnalyticsProvider, instrumentation hooks, env config. PR #966

Epic: Production Infrastructure

5 story areas. Production deployment and operations.

Story AreaScopeSpec Reference
Production environmentEKS + RDS + ElastiCache, production Kustomize overlayDeploy to Production
Production CD pipelineRelease tag → approval gate → production deployCI/CD Pipeline
Monitoring & dashboardsGrafana dashboards, Prometheus alerting (Sentry already live from M05)Observability
Database migration automationgolang-migrate init containers, migration gating in CDDatabase Migrations
Backup proceduresRDS snapshots, FalkorDB BGSAVE → S3Disaster Recovery

Issues — Production Infrastructure

IssueTitleStatusNotes
M11-010Production Environment — EKS Cluster, RDS, ElastiCache, and Kustomize Overlay✅ DonePR #980
M11-011Production CD Pipeline — Release Tag to Approval Gate to Deploy✅ DonePR #980
M11-012Monitoring and Dashboards — Grafana, Prometheus, and Alerting✅ DonePR #980
M11-013Database Migration Automation — Init Containers and CD Gating✅ DonePR #980
M11-014Backup Procedures — RDS Snapshots, FalkorDB BGSAVE to S3, and Typesense Snapshots✅ DonePR #980

4 story areas. Legal compliance for launch.

Story AreaScopeSpec Reference
Privacy policyFinalize + attorney reviewbusiness/POLICY-TERMS.md
Terms of serviceFinalize + attorney reviewbusiness/POLICY-TERMS.md
Church disclaimerIn-app and marketing materialsbusiness/LEGAL.md
Trademark filingUSPTO filing for "GospeLib"business/LEGAL.md
IssueTitleStatusNotes
M11-015Privacy Policy — Finalize, Attorney Review, and Publish🔶 PartialPR #964 — page live, attorney review pending
M11-016Terms of Service — Finalize, Attorney Review, and Publish🔶 PartialPR #964 — page live, attorney review pending
M11-017Church Disclaimer — In-App Footer and Marketing Materials✅ DonePR #964
M11-018Trademark Filing — USPTO Registration for "GospeLib"✅ DoneFiled 2026-03-20, Serial No. 99715386, 3 classes (9/41/42), $1,050. Awaiting examination.

Progress: 15 Done · 3 Partial (83%)


Explicit Deferrals

The following workspace components are not in MVP scope and are intentionally deferred:

ComponentDeferral Reason
Mobile app (apps/mobile)MVP is web-only per MVP.md § Platform. Expo shell and navigation are scaffolded for post-launch.
Admin app (apps/admin)No admin features in MVP scope. Dashboard skeleton exists for post-launch operational tooling.
Notifications service (services/notifications)Redis Streams consumer and push/email stubs are scaffolded. Full implementation deferred to post-MVP when user engagement features are prioritized.

Current State → First Steps

Context for understanding where the codebase starts and what has been built by M11:

Note (2026-06-12): The "starting conditions" below described the initial scaffolded state at project kickoff. The codebase has since progressed to 91% overall milestone completion with fully implemented services, packages, tests, and GUI components.

The codebase was initially fully scaffolded with zero business logic implemented. Key starting conditions at project kickoff:

  • Monorepo tooling: Nx, pnpm workspaces, CI pipeline, Docker Compose, commitlint, Release Please — all functional
  • All services: Health-only stubs (/health, /ready). Go services were identical boilerplate; Python services had empty sub-packages
  • Ingest service: Stub files (models, pipelines, DB layer) — all NotImplementedError or # TODO
  • TypeScript apps: "Coming soon" placeholders. No route groups, no components, no data fetching
  • Packages: Empty barrels (types had empty interfaces, sdk returned {}, config had empty Zod schema)
  • Corpus data: Complete across all 7 schema families (~966 files, ~215 MB)
  • Infrastructure: Docker Compose functional (4 data stores). K8s base manifests existed. Terraform modules were stubs.
  • Tests: Zero implemented
  • OpenAPI specs: None generated

By M11, all of the above should be fully implemented through milestones M00–M10. M11 focuses on production hardening, polish, and launch readiness — not new feature development.


Issue Dependency Graph

M11-001 ──► M11-002
M11-001 ──► M11-009
M11-003 ──► M11-004
M11-003 ──► M11-007
M11-010 ──► M11-011
M11-010 ──► M11-012
M11-010 ──► M11-013
M11-010 ──► M11-014
M11-011 ──► M11-013
M11-015 ──► M11-017
M11-016 ──► M11-017
M11-005 (independent)
M11-006 (independent)
M11-008 (independent)
M11-018 (independent)

Legend: A ──► B means A blocks B (B is blocked by A)


Document References

DocContainsUse When Writing Stories For
MVP.mdFeature scope, tier breakdown, success criteria, budgetAcceptance criteria, scope boundaries
TECH-SPEC.mdArchitecture, service boundaries, data stores, API catalogTechnical implementation details
GOSPELIB-SCHEMAS.mdAll 7 schema families, node/edge types, validation rulesData models, Pydantic models, graph schema
GOSPELIB-INGEST-SPEC.md7-stage pipeline, Cypher templates, batch strategy, CLIIngest pipeline stories
DESIGN-SYSTEM.mdVisual identity, component catalog, reader modes, tokensUI component stories
DESIGN-SYSTEM.md §§ 13, 21–23Footnotes (§13), subscription boundaries (§21), sharing (§22), onboarding (§23)UX flow stories
Deployment & OperationsEnvironments, K8s, CI/CD, migrations, secrets, DRInfrastructure and deployment stories
REPO-MAP.mdDirectory structure, naming conventions, dependency rulesAll stories (coding standards)
business/LEGAL.mdLegal compliance, church disclaimer, trademarkLegal stories
business/POLICY-TERMS.mdPrivacy policy, terms of service draftsLegal stories

Additional Spec References for M11


Sprint Mapping

SprintWeeksPrimary Focus
S1633–34CFM integration (M10 overlap), scripture card sharing, free trial flow
S1735–36Onboarding, production deploy, monitoring dashboards, performance audit
S1837–38Production polish, legal finalization, backup procedures, launch

Sprint Load Warnings

No specific sprint load warnings from the plan target S16–S18. However:

  • S17–S18 are the final sprints before production launch. Scope discipline is critical — any incomplete P2/P3 work must be cut, not squeezed in.
  • Production deployment (infrastructure epic) is complex and involves EKS + RDS + ElastiCache provisioning, CD pipeline activation, and monitoring setup. Allow buffer.
  • Legal work (attorney review of privacy policy and ToS) has external dependencies and lead times. Start early.

Release Info

ReleaseTagTriggerContains
v1.0.0web/v1.0.0, all services v1.0.0M11 completeProduction launch

Tags follow <component>/v<semver> per release-please-config.json.

Note: This is the production release. All services get v1.0.0 tags. This is the first non-alpha release.


Relevant Risks

RiskImpactMitigation
Solo founder velocity38-week plan too aggressiveFounding users at Week 22 provide feedback before full scope; cut P3 scope if needed
Missing specification documentsDESIGN-SYSTEM.A1.md doesn't exist (referenced by M10/M11 UX flows)Write DESIGN-SYSTEM.A1.md before P3 or merge content into DESIGN-SYSTEM.md
Clerk/Stripe integration complexityDelays auth + billing (upstream dependency)Start integration in parallel with reader; use sandbox environments early

Cross-Cutting Concerns

Testing

LayerFrameworkWhenSpec Reference
Python unit/integrationpytest + testcontainersEvery PRGOSPELIB-INGEST-SPEC.md § Testing
Go unitgo test -race + table-drivenEvery PRTECH-SPEC.md § Testing
TypeScript unitVitestEvery PRTECH-SPEC.md § Testing
Component visualStorybook or playgroundP1+DESIGN-SYSTEM.md § Governance
E2EPlaywrightPre-release (activated in P3)
Visual regressionPlaywright + pixelmatchP1+ (any packages/ui/ or apps/*/src/ change)DESIGN-SYSTEM.md § Visual Regression CI

Documentation

DocUpdate Trigger
Deployment OverviewM11 — document production deploy
API OpenAPI specsFinal audit of all service specs
ADRsProduction architecture decisions, monitoring strategy

CI/CD

AdditionPhaseDetail
Production CD pipelineP3Release tag → approval gate → deploy (activated in M11)
E2E testsP3Playwright E2E tests for critical user journeys

Dependencies

Upstream (what M11 needs)

DependencyMilestoneDetail
All milestones M00–M10M00–M10All features and services must be complete and deployed to staging
Billing operationalM10Subscription flow must work before production launch
Staging environment provenM05Production config based on staging patterns
Legal review completeExternalAttorney review of privacy policy and ToS has external lead time

Downstream (what depends on M11)

DependentDetail
Post-MVP mobile appapps/mobile scaffolded but not in MVP scope; depends on v1.0.0 API stability
Post-MVP admin dashboardapps/admin scaffolded; depends on production operational insights
Post-MVP notificationsservices/notifications scaffolded; depends on user engagement data from v1.0.0

Summary

MetricCount
Total Issues18
Sub-Issues0
Total Estimate (pts)95
SprintsS16–S18
Dependencies (blocking)11
Dependencies (blocked by)11