docs(06-07): update plan tracking

This commit is contained in:
Jakub Zych
2026-09-20 17:11:59 +02:00
parent bc43e9eabd
commit 3601a0ab09
3 changed files with 17 additions and 14 deletions

View File

@@ -3,15 +3,15 @@ gsd_state_version: 1.0
milestone: v1.0
milestone_name: milestone
status: executing
stopped_at: Completed 06-06-PLAN.md
last_updated: "2026-09-20T14:14:04.240Z"
last_activity: 2026-09-20 -- Phase 6 planning complete
stopped_at: Completed 06-07-PLAN.md
last_updated: "2026-09-20T15:11:34.217Z"
last_activity: 2026-09-20
progress:
total_phases: 15
completed_phases: 5
total_plans: 34
completed_plans: 29
percent: 33
completed_plans: 30
percent: 88
---
# Project State
@@ -26,17 +26,17 @@ See: .planning/PROJECT.md (updated 2026-09-16)
## Current Position
Phase: 06 (http-routing-auth-groups-and-rate-limiting) — EXECUTING
Plan: 6 of 6
Plan: 2 of 11
Status: Ready to execute
Last activity: 2026-09-20 -- Phase 6 planning complete
Last activity: 2026-09-20
Progress: [██████████] 100%
Progress: [█████████░] 88%
## Performance Metrics
**Velocity:**
- Total plans completed: 29
- Total plans completed: 30
- Average duration: 21 min
- Total execution time: 104 min
@@ -75,6 +75,7 @@ Progress: [██████████] 100%
| Phase 06 P03 | 20 min | 3 tasks | 24 files |
| Phase 06 P05 | 13 min | 3 tasks | 13 files |
| Phase 06 P06 | 1h 29m | 2 tasks | 3 files |
| Phase 06 P07 | 12 min | 1 tasks | 4 files |
## Accumulated Context
@@ -174,6 +175,8 @@ Recent decisions affecting current work:
- [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
- [Phase 06]: Keep inv_token outermost so valid credentials populate bouncer.Credential before the limiter selects tok:<id>. — The named bucket must retain per-token isolation for valid credentials instead of collapsing them onto the IP fallback.
- [Phase 06]: Place throttle:fonoteka-api-token before inv.scope:read in the personal-token middleware declaration. — Missing and invalid credentials must consume the 60/minute per-IP deny-path budget before InvScope returns its PHP-compatible 401 response.
- [Phase 06]: Replace the split limiter store protocol with one atomic Attempt operation. — Expiry, threshold comparison, admitted increment, and retry duration must share one mutex critical section so concurrent callers cannot bypass Max.
- [Phase 06]: Use one inline:domainless namespace plus trusted-proxy ClientIP for every anonymous inline throttle. — Host and inline throttle text must not let anonymous callers rotate rate-limit buckets; authenticated requests retain u:<principal id> isolation.
### Pending Todos
@@ -195,6 +198,6 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-09-20T11:32:06.433Z
Stopped at: Completed 06-06-PLAN.md
Last session: 2026-09-20T15:11:34.184Z
Stopped at: Completed 06-07-PLAN.md
Resume file: None