diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md index 9019b65..3941b55 100644 --- a/.planning/ROADMAP.md +++ b/.planning/ROADMAP.md @@ -748,7 +748,7 @@ Plans: 6. Feedback submissions, widget config and the hide preference work (sitemap dropped for this application, D-14); the oauth-client, prune-notifications and reindex commands all run correctly. `oauth-identities` GET/DELETE and token `GET /api/v1/fonoteka/me` stay pending in this phase (D-09, todo orphan-pending-routes). -**Plans:** 4/6 plans executed +**Plans:** 5/6 plans executed Plans: @@ -765,7 +765,7 @@ Plans: - [x] 14-04-PLAN.md — sm-golem-plugin (models table, admin, importer, Anthropic/OpenAI-compatible adapters, AIService, SSRF guard) mounted as a submodule; admin vision tier; AlbumRecognitionService, recognize on both groups and ai-credential/test (168 ported) **Wave 5** *(blocked on Wave 4 completion)* -- [ ] 14-05-PLAN.md — sm-feedback-plugin: config, submit, preflight, me/hidden, getApiArray hook, embed.js, settings and submissions admin, importer, G15Office River job; feedback parity section (175 routes, 172 ported) +- [x] 14-05-PLAN.md — sm-feedback-plugin: config, submit, preflight, me/hidden, getApiArray hook, embed.js, settings and submissions admin, importer, G15Office River job; feedback parity section (175 routes, 172 ported) **Wave 6** *(blocked on Wave 5 completion)* - [ ] 14-06-PLAN.md — Unit tests last: PHP Discogs truth tables, full coverage, threat and edge tests, route table and fuzz, scripts/check-phase14.sh, security review, validation and requirement evidence @@ -828,7 +828,7 @@ Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → | 11.2. summercms.io Alpha 0.1 landing page on SummerCMS | 3/3 | In Progress| | | 12. Płytarium API — Collections and Albums | 5/5 | Complete | 2026-10-02 | | 13. Płytarium API — wishlist, notifications, CSV, credentials, public routes | 6/6 | In Progress| | -| 14. Domain jobs and external integrations | 4/6 | In Progress| | +| 14. Domain jobs and external integrations | 5/6 | In Progress| | | 14.1. OAuth identities and fonoteka me routes (INSERTED) | 0/TBD | Not started | - | | 15. Cutover | 0/TBD | Not started | - | diff --git a/.planning/STATE.md b/.planning/STATE.md index 731b0ba..cb706d7 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -4,16 +4,16 @@ milestone: v1.0 current_phase: 14 current_phase_name: Domain jobs and external integrations status: executing -stopped_at: Completed 14-04-PLAN.md -last_updated: "2026-10-03T21:39:25.280Z" +stopped_at: Completed 14-05-PLAN.md +last_updated: "2026-10-03T22:28:08.051Z" last_activity: 2026-10-03 last_activity_desc: Phase 14 execution started -state_head: b3e4626d2df317c1b0297c1d0c2b39ca9bb07ab0 +state_head: b5d20b3bfdd712429e76e17cbb22e85db427e051 progress: total_phases: 22 completed_phases: 11 total_plans: 118 - completed_plans: 116 + completed_plans: 117 milestone_name: milestone --- @@ -29,7 +29,7 @@ See: .planning/PROJECT.md (updated 2026-09-16) ## Current Position Phase: 14 (Domain jobs and external integrations) — EXECUTING -Plan: 5 of 6 +Plan: 6 of 6 Status: Ready to execute Last activity: 2026-10-03 — Phase 14 execution started @@ -170,6 +170,7 @@ Progress: [██████░░░░] 60% | Phase 14 P02 | 80 min | 4 tasks | 81 files | | Phase 14 P03 | 54min | 3 tasks | 122 files | | Phase 14 P04 | 69 min | 4 tasks | 144 files | +| Phase 14 P05 | 100min | 3 tasks | 93 files | ## Accumulated Context @@ -525,6 +526,10 @@ Recent decisions affecting current work: - [Phase 14]: AdminVisionModel(ctx, db) is a stateless seam fed by the golem vision model; only the admin tier sets AIConfig.Trusted (14-04) - [Phase 14]: User and org AI base_url overrides pass security.AssertSafeURL at resolve time; a refusal is Winter's 500 page (14-04) - [Phase 14]: fetchguard.IsPrivateAddr exported for resolve-time address checks (14-04) +- [Phase 14]: 14-05: surf answers OPTIONS on CORS paths with Laravel HandleCors headers (Cache-Control always; preflight echoes the requested method and headers, Vary, PHP's default Content-Type) +- [Phase 14]: 14-05: the feedback settings screen's code is feedback (cabana keys settings screens by code across plugins), not WinterCMS's settings +- [Phase 14]: 14-05: the G15Office job is a conga Dispatch with a summer_jobs row labelled with the PHP job class, 3 attempts on queue feedback, on a fetchguard AllowHostsMode client for the base URL's host (https only) +- [Phase 14]: 14-05: shared-plugin vendor sidecars are replayed from the plugin's own testdata copy; the application keeps the recorded original with a rows golden and a byte-equality test ### Pending Todos @@ -573,6 +578,6 @@ Items acknowledged and carried forward from previous milestone close: ## Session Continuity -Last session: 2026-10-03T21:39:24.721Z -Stopped at: Completed 14-04-PLAN.md +Last session: 2026-10-03T22:28:07.535Z +Stopped at: Completed 14-05-PLAN.md Resume file: None diff --git a/.planning/state.json b/.planning/state.json index 9275d26..a32eb4d 100644 --- a/.planning/state.json +++ b/.planning/state.json @@ -99,5 +99,5 @@ "label": "Advance to the next step", "reason": "Phase 14 of 22 · executing" }, - "updated_at": "2026-10-03T21:39:12.842Z" + "updated_at": "2026-10-03T22:27:56.992Z" }