THE PLAN

JoyOS Lab v1.2

A marketplace where members learn, experiment, and build, then sell what they create.

Progress as of 2026-07-02 Live build status, layered on top of the decisions captured below

Done Shipped to staging

  • Schema-resilience foundation (PR #396): pre-connect schema gate, hardened prod CI, safe migration path
  • Entry / fork-door (Phase 24): /start gate, Creator Studio = Catalyst + admin only
  • Onboarding O-1..O-9, O-10, O-11 fully built to staging
  • Offline-first / instant app: durable outbox, no false tier-locks, splash retired
  • Learning Lab browse, offer detail, personalized home, My Library (P1a/P1b/P2/P3/P6)
  • Marketplace core: live on PROD since 2026-06-01, zero data loss
  • Community gratitude gate + anonymous-to-signed-in gratitude carry-through

In progress Being verified / finished now

  • O-12: auto-initiate onboarding for not-yet-initiated users (on staging, E2E verification underway)
  • Landing-redirect removal + infinite-"Connecting" resilience fix
  • Creator Studio nav polish to match mockups

Pending Not started yet

  • Marketplace payments + Stripe Connect (Phases 26-35)
  • Admin Support Console (Phase 38)
  • Email verification flow
  • Ratings & Reviews (P4), Shelves & Recommendations (P5)
  • Schema-Guard maincloud relay

How to read the badges below: every phase card in the console now carries a small DONE / IN PROGRESS / PENDING pill next to its title, reflecting real build+ship status on staging-next as of this update. This is a status layer only -- none of the decision answers captured in each phase's plan were changed.

Recently shipped to staging (synced 2026-07-02)

  1. 0371f4b9 Merge pull request #484 from braceyourself/feat/prod-magic-link-privatetable-fix
  2. 230d0261 GREEN: verify-magic-link.js now uses verify_magic_link_nonce reducer instead of raw SQL on private table
  3. b5fbc67c RED: verify-magic-link.js prod exchange must use a reducer, not raw SQL on a private table
  4. ad1efcb9 Merge pull request #483 from braceyourself/feat/learninglab-header-logo-image-fill
  5. b1e2734c feat(learning-lab): GREEN - real JoyOS mark in header, images always fill
  6. 94100f18 test(learning-lab): RED - header monogram must be real JoyOS mark, images must always fill
  7. 73be5c6a Merge pull request #481 from braceyourself/feat/forkdoor-cta-active-only
  8. 52585d83 feat(fork-door): GREEN hover-activates-CTA (desktop hover = mobile tap)
  9. 8860b9fe test(fork-door): RED for hover-activates-CTA (desktop hover = mobile tap)
  10. 78c14e67 Merge pull request #480 from braceyourself/feat/gratitude-wall-lazyload
  11. 0475c73e fix(gratitude-wall): lazy/incremental loading + row layout
  12. fc47bb70 test(wall): RED tests for gratitude wall lazy-load + row layout (task #109)
  13. 808cf55e fix(stdb): register magic_link_exchange_results in the schema table registry (#479)
  14. 2fa1d8a8 Merge pull request #478 from braceyourself/chore/revamp-sync-stop-hook
  15. ace3ceb4 fix(auth): staging dev-login exchange 401s because magic_link_nonces is private (task #97) (#477)
  16. 7957b515 wire revamp-sync Stop hook into settings.json
  17. 452a8c48 Merge pull request #414 from braceyourself/hotfix/kristin-joyos-email-admin
  18. bb7500ef chore: add kristin@joyos.global to ADMIN_EMAILS allowlist
  19. 8f99b25b fix(marketplace): seed demo listings with curated category strings (#107) (#476)
  20. ff390c8d fix(onboarding-o5): clarify role/timezone prompt copy (#106) (#475)
  21. 1d544fbe fix(onboarding): O-12 waits for feature_flags subscription before evaluating kill-switch (#474)
  22. cefbdd80 Merge pull request #471 from braceyourself/feat/marketplace-live-categories-v2
  23. f3ffc80f GREEN: marketplace categoryRows sourced from live marketplace_categories
  24. dd48da50 RED: marketplace categoryRows derives from live marketplace_categories table
  25. 8fb7d083 O-12: auto-initiate onboarding for any not-yet-initiated user (#470)
  26. a3f32129 LL P3: My Library (purchased items + fulfillment) (#469)
  27. 2947e26f GREEN: LL P2 personalized Learning Lab Home (locked Inner tab)
  28. 17fe93e9 RED: LL P2 personalized Learning Lab Home (locked Inner tab)
  29. 34cfd28c fix(onboarding): wire isFlagEnabled to O-11 rollout-percentage gate (#467)
  30. dad0819a Onboarding O-11: admin funnel + progressive rollout gate (#466)
  31. a35c4b13 Merge pull request #465 from braceyourself/feat/ll-detail-match
  32. bae8a3c7 feat(learning-lab): GREEN for Offer Detail P1b (content-preview, related rail, reviews slot)
  33. 4216e9e2 test(learning-lab): RED contract for Offer Detail P1b (content-preview, related rail, reviews slot)
Review Console 0 / 15 phases seen
Full plan (all phases)