diff --git a/.planning/G15OFFICE.md b/.planning/G15OFFICE.md index 7f51d26c..5cd49bf9 100644 --- a/.planning/G15OFFICE.md +++ b/.planning/G15OFFICE.md @@ -45,5 +45,6 @@ A new phase, inserted or added, gets its task when it is added to `ROADMAP.md`. | 13 | nkbr2ybg | 20 | xo463rwk | | 14 | cwlaryop | 30 | 0rkcboo0 | | 14.1 | v0j5lwvq | 31 | hgol7otp | +| | | 19.4.1 | g02hcroj | Backlog phase 999.1 (newsletter) has no task until it is promoted into the roadmap. diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md index eee0126e..f80a6875 100644 --- a/.planning/ROADMAP.md +++ b/.planning/ROADMAP.md @@ -38,10 +38,11 @@ Decimal phases appear between their surrounding integers in numeric order. - [x] **Phase 19.1: Chat satellites** - Port chatbots, chatvideo, forum, herald and userfriends (completed 2026-10-18) - [ ] **Phase 19.3: Framework transport and infrastructure for WavePath** - Cookie refresh, credentialed CORS, cache and Redis rate limits, S3 option, OpenAPI page, Turnstile - [x] **Phase 19.4: OIDC provider on wristband** - Discovery, JWKS with key rotation, id_token, userinfo, consent and pairwise subjects (completed 2026-10-20) +- [ ] **Phase 19.4.1: Early public demo on demo.summercms.io** - sm-demo-app with today's shared plugins on rome: demo accounts, journal, presentations, quizzes and an OIDC sample; backend by request - [ ] **Phase 19.5: Social login in sm-user-plugin** - Google and Facebook login with the SPA one-time-code handoff - [ ] **Phase 19.6: Two-factor auth and device flow in sm-user-plugin** - TOTP, WebAuthn, email and recovery codes, trusted devices, device authorization - [ ] **Phase 19.7: Generic MCP module** - Opt-in MCP endpoint, plugin-declared tools filtered by permissions, one connector per person via OAuth and a verified account link -- [ ] **Phase 20: Demo instance with every shared plugin** - Public showcase site on sm-demo-app: chat, video calls, presentations, journal and the rest; backend by request +- [ ] **Phase 20: Demo instance with every shared plugin** - Add the chat family (chat, channels, video calls, chatbots, forum, herald, friends) to the live demo from Phase 19.4.1 - [ ] **Phase 30: Płytarium cutover** - Parity harness green, both real clients run unchanged in production - [ ] **Phase 31: Chat polish against WavePath clients** - Replay WavePath's chat traffic through `tide` against the ported chat plugins until green @@ -1314,6 +1315,26 @@ Plans: **Wave 4** *(blocked on Wave 3 completion)* - [x] 19.4-04-PLAN.md — Unit tests: PHP test map port plus Go-only cases, scripts/check-phase19.4.sh (wave 4) +### Phase 19.4.1: Early public demo on demo.summercms.io (INSERTED) + +**Goal:** Clients can be shown a live demo at `demo.summercms.io` now, before the chat family lands: `sm-demo-app` with today's 16 shared plugins runs on rome, its public Nuxt site shows the plugins working through prepared demo accounts, and the admin backend stays private. +**Mode:** mvp +**Depends on:** Phase 19.4 +**Repos:** `sm-demo-app` (new git remote) and its `vue-demo-app`; frontend templates reused from `sm-bm-app`'s frontend; the shared plugin repos and `summercms.go` only for release tags and gaps the demo exposes +**Requirements**: TBD +**Success Criteria** (what must be TRUE): + + 1. `sm-demo-app` is pushed to git.golem15.com, and its `go.mod` requires tagged versions of the framework and every shared plugin, so a release build compiles without the local `go.work`. + 2. `https://demo.summercms.io` serves the Nuxt site and the Go backend from rome (nginx, supervisor, Postgres, TLS), with `DEPLOY.md` covering build, upload, release and rollback. `/backend` is refused by nginx, and the site carries a "want to see the backend? contact Golem15" call to action. + 3. Visitors sign in with prepared demo accounts whose credentials the login page shows; public sign-up is off. Demo data is reset nightly by `demo:seed`. + 4. The site has pages for the journal (blog), presentations and quizzes, plus a "Log in with SummerCMS" sample that runs the OIDC provider's flow end to end, alongside the existing home, FAQ and subscriptions pages. Templates come from `sm-bm-app`'s frontend where it has them. + 5. The new code has unit tests, delivered in the phase's last plan. + +**Plans:** 0 plans + +Plans: +- [ ] TBD (run /msd-plan-phase 19.4.1 to break down) + ### Phase 19.5: Social login in sm-user-plugin (INSERTED) **Goal:** `sm-user-plugin` signs users in with Google and Facebook through `/oauth/{provider}` and its callback, with a provider registry open to more providers, the SPA one-time-code handoff and the pending-registration branch, matching the PHP user plugin's contract. @@ -1383,9 +1404,9 @@ Plans: ### Phase 20: Demo instance with every shared plugin -**Goal:** `sm-demo-app` runs every shared Golem15 plugin collected so far in one binary, and its public Nuxt site shows them working: chat and channels with realtime, video calls, presentations, quizzes, journal, FAQ, subscriptions and the rest. The admin backend is not public; the site carries a call to action to contact Golem15 for a backend tour. +**Goal:** `sm-demo-app` runs every shared Golem15 plugin collected so far in one binary, and its public Nuxt site shows them working: chat and channels with realtime, video calls, presentations, quizzes, journal, FAQ, subscriptions and the rest. The admin backend is not public; the site carries a call to action to contact Golem15 for a backend tour. Phase 19.4.1 deploys the demo early with the plugins available then; this phase adds the chat family to that live instance. **Mode:** mvp -**Depends on:** Phase 19, Phase 19.1, Phases 19.3 to 19.7 +**Depends on:** Phase 19, Phase 19.1, Phases 19.3 to 19.7, Phase 19.4.1 **Repos:** `sm-demo-app` and its `vue-demo-app`; the shared plugin repos and `summercms.go` only for gaps the demo exposes **Requirements**: TBD **Success Criteria** (what must be TRUE): @@ -1438,7 +1459,7 @@ Plans: ## Progress **Execution Order:** -Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → 9 → 10 → 11 → 12 → 13 → 14 → 14.1 → 14.2 → 14.2.1 → 14.3 → 15 → 16 → 17 → 18 → 18.1 → 19 → 19.1 → 19.3 → 19.4 → 19.5 → 19.6 → 19.7 → 20 → (21 to 29, added as planned) → 30 → 31 +Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → 9 → 10 → 11 → 12 → 13 → 14 → 14.1 → 14.2 → 14.2.1 → 14.3 → 15 → 16 → 17 → 18 → 18.1 → 19 → 19.1 → 19.3 → 19.4 → 19.4.1 → 19.5 → 19.6 → 19.7 → 20 → (21 to 29, added as planned) → 30 → 31 (Phase 2 depends on Phase 1's command kernel; the two are no longer parallel.) | Phase | Plans Complete | Status | Completed | @@ -1479,6 +1500,7 @@ Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → | 19.1. Chat satellites | 6/6 | Complete | 2026-10-18 | | 19.3. Framework transport and infrastructure for WavePath | 6/6 | In Progress| | | 19.4. OIDC provider on wristband | 4/4 | Complete | 2026-10-20 | +| 19.4.1. Early public demo on demo.summercms.io | 0/TBD | Not started | - | | 19.5. Social login in sm-user-plugin | 0/4 | Planned | - | | 19.6. Two-factor auth and device flow in sm-user-plugin | 0/TBD | Not started | - | | 19.7. Generic MCP module | 0/TBD | Not started | - | diff --git a/.planning/STATE.md b/.planning/STATE.md index fab99742..ddd39376 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -5,12 +5,12 @@ current_phase: "19.5" current_phase_name: Social login in sm-user-plugin status: Ready for verification — 6/6 plans executed, UAT in progress (19.3-UAT.md) stopped_at: Phase 19.4 complete, ready to plan Phase 19.3 -last_updated: "2026-10-19T23:07:56.637Z" +last_updated: "2026-10-19T23:55:03.027Z" last_activity: 2026-10-20 last_activity_desc: "Completed quick task 261020-13e: admin image preview fallback" -state_head: 2eecfb8197d3c345ac6d7a07b6fec0b5e0028a7b +state_head: dd047ebb1cb510ac04cc2be77d88a9aa17404f97 progress: - total_phases: 42 + total_phases: 43 completed_phases: 35 total_plans: 212 completed_plans: 208 @@ -296,6 +296,7 @@ Progress: [████████░░] 83% - Phase 19.6 inserted after Phase 19.5: Two-factor auth and device flow in sm-user-plugin (WavePath framework asks, 2026-10-11) - Phase 19.7 inserted after Phase 19.6: Generic MCP module: opt-in endpoint, plugin-declared tools, one connector per person (from /msd-explore 2026-10-17) - Phase 20 reordered: Roadmap reordered (/msd-explore 2026-10-18): new Phase 20 Demo instance with every shared plugin; Płytarium cutover moved 20 → 30; Chat polish against WavePath clients moved 19.2 → 31; 21–29 added as their goals firm up +- Phase 19.4.1 inserted after Phase 19.4: Early public demo on demo.summercms.io: today's 16 shared plugins on rome, demo accounts, journal/presentations/quizzes/OIDC pages, backend by request; Phase 20 narrows to the chat family (URGENT) ### Decisions