docs(06-05): complete unit coverage and security-review plan

This commit is contained in:
Jakub Zych
2026-09-19 21:21:42 +02:00
parent 74d1eb37a0
commit b759669f23
4 changed files with 190 additions and 16 deletions

View File

@@ -2,16 +2,16 @@
gsd_state_version: 1.0
milestone: v1.0
milestone_name: milestone
status: executing
stopped_at: Completed 06-03-PLAN.md
last_updated: "2026-09-19T19:00:29.025Z"
status: verifying
stopped_at: Completed 06-05-PLAN.md
last_updated: "2026-09-19T19:21:17.969Z"
last_activity: 2026-09-19
progress:
total_phases: 15
completed_phases: 5
completed_phases: 6
total_plans: 28
completed_plans: 27
percent: 33
completed_plans: 28
percent: 40
---
# Project State
@@ -26,11 +26,11 @@ See: .planning/PROJECT.md (updated 2026-09-16)
## Current Position
Phase: 06 (http-routing-auth-groups-and-rate-limiting) — EXECUTING
Plan: 4 of 5
Status: Ready to execute
Plan: 5 of 5
Status: Phase complete — ready for verification
Last activity: 2026-09-19
Progress: [██████████] 96%
Progress: [██████████] 100%
## Performance Metrics
@@ -73,6 +73,7 @@ Progress: [██████████] 96%
| Phase 06 P01 | 25 min | 3 tasks | 26 files |
| Phase 06 P02 | 14 min | 3 tasks | 16 files |
| Phase 06 P03 | 20 min | 3 tasks | 24 files |
| Phase 06 P05 | 13 min | 3 tasks | 13 files |
## Accumulated Context
@@ -167,6 +168,9 @@ Recent decisions affecting current work:
- [Phase 06]: Production body limits are 134217728/134217728 (128MiB), operator-confirmed 2026-09-19 from nginx client_max_body_size=128M and php.ini post_max_size=128M/upload_max_filesize=128M (D-18, T-06-13)
- [Phase 06]: CORS path globs compile as Laravel nested * because Go path.Match would miss /api/v1/fonoteka/genres (Pitfall 10)
- [Phase 06]: swag v1 Swagger 2 is converted by a local swagger2openapi helper to OpenAPI 3 for openapi-typescript 7; Phase 10 wires types into the admin SPA
- [Phase 06]: Full route-table isolation uses surf.BuildRouter of the real plugins; app.Handler returns http.Handler and cannot call Routes() — app.Handler assembles an http.Handler; Routes() is on *surf.Router
- [Phase 06]: T-06-05 remains accept as originating 06-01 (the 06-05 plan three-accepts list omitted it) — Originating plan disposition is copied verbatim into 06-SECURITY-REVIEW.md
- [Phase 06]: PublicOnlyMode any-host-when-public is proven via skipReservedCheck httptest, not a live public IP dial — Unit tests must not require outbound network
### Pending Todos
@@ -188,6 +192,6 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-09-19T19:00:29.002Z
Stopped at: Completed 06-03-PLAN.md
Last session: 2026-09-19T19:21:17.950Z
Stopped at: Completed 06-05-PLAN.md
Resume file: None