docs(12-04): update state and roadmap progress after plan 12-04

This commit is contained in:
Jakub Zych
2026-10-02 14:44:17 +02:00
parent 3cf2b38a8c
commit 37595fb6b2
2 changed files with 16 additions and 10 deletions

View File

@@ -4,16 +4,16 @@ milestone: v1.0
current_phase: 12
current_phase_name: Płytarium API — Collections and Albums
status: executing
stopped_at: Completed 12-03-PLAN.md
last_updated: "2026-10-02T12:36:15.774Z"
stopped_at: Completed 12-04-PLAN.md
last_updated: "2026-10-02T12:44:01.203Z"
last_activity: 2026-10-02
last_activity_desc: Phase 12 execution started
state_head: 66497635906aea588e28ba6d34afc6576423a662
state_head: 3cf2b38a8c84fc1251599679b9ab16f5b321566d
progress:
total_phases: 21
completed_phases: 10
total_plans: 101
completed_plans: 99
completed_plans: 100
milestone_name: milestone
---
@@ -29,7 +29,7 @@ See: .planning/PROJECT.md (updated 2026-09-16)
## Current Position
Phase: 12 (Płytarium API — Collections and Albums) — EXECUTING
Plan: 4 of 5
Plan: 5 of 5
Status: Ready to execute
Last activity: 2026-10-02 — Phase 12 execution started
@@ -154,6 +154,7 @@ Progress: [██████░░░░] 60%
| Phase 12 P01 | 39 min | 4 tasks | 57 files |
| Phase 12 P02 | 46 min | 3 tasks | 119 files |
| Phase 12 P03 | 36 min | 3 tasks | 72 files |
| Phase 12 P04 | 82 min | 3 tasks | 226 files |
## Accumulated Context
@@ -446,6 +447,11 @@ Recent decisions affecting current work:
- [Phase 12]: Invitation mail is a conga Enqueue River job on the invite transaction with the token as lagoon.Encrypted ciphertext; the worker skips superseded or non-pending invitations
- [Phase 12]: Every resolver caller maps errors through writeResolveError (404 page, 409 pending-invitation page, else opaque 500)
- [Phase 12]: Route parity cases needing an invitation token seed it on both sides as secret:invite; flows read a PHP-minted token from the log mailer (php_parity.sh serve-mail, invite-token)
- [Phase 12]: 12-04: slugs and artist name keys port Laravel Str::slug/Str::ascii (czeslaw-niemen, rb), non-Latin scripts dropped
- [Phase 12]: 12-04: album search engine ids are re-gated by access and active collection only, as Scout's query callback; filters stay engine-side
- [Phase 12]: 12-04: sync versions compare at whole seconds so PHP's base64 cursor round-trips; albums/value prints exact sums like sprintf('%.2f')
- [Phase 12]: 12-04: GORM callback handles are used through a NewDB session (cleanSession); WithContext keeps the write's bind variables
- [Phase 12]: 12-04: parity album state uses fixed ids/timestamps on both sides; recorded query strings are restored from the spec
### Pending Todos
@@ -494,6 +500,6 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-10-02T11:18:14.401Z
Stopped at: Completed 12-03-PLAN.md
Last session: 2026-10-02T12:44:00.552Z
Stopped at: Completed 12-04-PLAN.md
Resume file: None