docs(08-04): complete token-exchange plan

This commit is contained in:
Jakub Zych
2026-09-23 20:35:49 +02:00
parent 4bd3b3db4f
commit a459f74897
3 changed files with 132 additions and 9 deletions

View File

@@ -3,14 +3,14 @@ gsd_state_version: 1.0
milestone: v1.0
milestone_name: milestone
status: executing
stopped_at: Completed 08-03-PLAN.md
last_updated: "2026-09-23T18:11:44.182Z"
stopped_at: Completed 08-04-PLAN.md
last_updated: "2026-09-23T18:35:28.069Z"
last_activity: 2026-09-23
progress:
total_phases: 15
completed_phases: 7
total_plans: 55
completed_plans: 48
completed_plans: 49
percent: 47
---
@@ -26,11 +26,11 @@ See: .planning/PROJECT.md (updated 2026-09-16)
## Current Position
Phase: 08 (oauth2-1-authorization-server) — EXECUTING
Plan: 4 of 10
Plan: 5 of 10
Status: Ready to execute
Last activity: 2026-09-23
Progress: [█████████░] 87%
Progress: [█████████░] 89%
## Performance Metrics
@@ -94,6 +94,7 @@ Progress: [█████████░] 87%
| Phase 08 P01 | 25min | 2 tasks | 6 files |
| Phase 08 P02 | 30min | 3 tasks | 14 files |
| Phase 08 P03 | 20min | 2 tasks | 6 files |
| Phase 08 P04 | 15min | 2 tasks | 5 files |
## Accumulated Context
@@ -223,6 +224,9 @@ Recent decisions affecting current work:
- [Phase 08]: [Phase 08 P03]: authorize's allowed-scope set is a package-level authorizeAllowedScopes constant, not Options.ScopesSupported (RFC 8414 metadata field) -- conceptually distinct config surfaces matching PHP's own separation
- [Phase 08]: [Phase 08 P03]: Client lookup and pending-row creation each open their own WithinTx call, matching PHP's lack of a wrapping transaction around authorize; only DCR and later code-exchange/refresh-rotation need single-transaction atomicity
- [Phase 08]: [Phase 08 P03]: AUTH-05/AUTH-06/AUTH-07 remain Pending in REQUIREMENTS.md, continuing 08-01/08-02's decision: this plan ships authorize only, not the full RFC surface
- [Phase 08]: [Phase 08 P04]: Token dispatch accepts grant_type=refresh_token per PHP's exact validity check but rotateRefreshToken always returns invalid_grant in this plan's scope; full rotation/lineage-kill (T-08-REFRESH-REPLAY) is 08-06's job per ROADMAP.md Wave 6
- [Phase 08]: [Phase 08 P04]: No routes.go/plugin.go changes -- POST /oauth/mcp/token is not mounted on the assembled app this plan; mounting happens once 08-05 wires consent and produces a real issued code
- [Phase 08]: [Phase 08 P04]: MintablePrefix changed from const to var (D-11 groundwork) with no config wiring added yet; default stays byte-identical inv_
### Pending Todos
@@ -244,6 +248,6 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-09-23T18:11:30.777Z
Stopped at: Completed 08-03-PLAN.md
Last session: 2026-09-23T18:35:28.050Z
Stopped at: Completed 08-04-PLAN.md
Resume file: None