docs(01-04): complete auth layer plan

- 01-04-SUMMARY.md: MsalClientFactory + SessionManager auth layer
- STATE.md: progress updated to 63%, decisions added, session recorded
- ROADMAP.md: phase 1 progress updated (5/8 summaries)
- REQUIREMENTS.md: FOUND-03 and FOUND-04 marked complete
This commit is contained in:
Dev
2026-04-02 12:26:55 +02:00
parent 158aab96b2
commit fcae8f0e49
4 changed files with 150 additions and 10 deletions

View File

@@ -3,14 +3,14 @@ gsd_state_version: 1.0
milestone: v1.0
milestone_name: milestone
status: planning
stopped_at: Completed 01-foundation-05-PLAN.md
last_updated: "2026-04-02T10:19:35.873Z"
stopped_at: Completed 01-foundation-04-PLAN.md
last_updated: "2026-04-02T10:26:38.489Z"
last_activity: 2026-04-02 — Roadmap created, requirements mapped, all 42 v1 requirements assigned to phases
progress:
total_phases: 5
completed_phases: 0
total_plans: 8
completed_plans: 4
completed_plans: 5
percent: 13
---
@@ -54,6 +54,7 @@ Progress: [█░░░░░░░░░] 13%
| Phase 01-foundation P02 | 1 | 2 tasks | 7 files |
| Phase 01-foundation P03 | 8 | 2 tasks | 7 files |
| Phase 01-foundation P05 | 4min | 2 tasks | 8 files |
| Phase 01-foundation P04 | 4 | 2 tasks | 4 files |
## Accumulated Context
@@ -76,6 +77,10 @@ Recent decisions affecting current work:
- [Phase 01-foundation]: LoadAsync on corrupt JSON throws InvalidDataException (not silent empty) — explicit failure protects against silent data loss
- [Phase 01-foundation]: Strings.Designer.cs maintained manually — ResXFileCodeGenerator is VS-only, not run by dotnet build; only ResourceManager accessor needed
- [Phase 01-foundation]: EmbeddedResource uses Update not Include in SDK-style project — SDK auto-includes all .resx; Include causes NETSDK1022 duplicate error
- [Phase 01-foundation]: MsalClientFactory stores MsalCacheHelper per clientId and exposes GetCacheHelper() — PnP creates its own internal PCA so tokenCacheCallback is the bridge for shared persistent cache
- [Phase 01-foundation]: SessionManager is the single holder of ClientContext instances — callers must not store returned contexts
- [Phase 01-foundation]: CacheDirectory is a constructor parameter (no-arg defaults to AppData) — enables test isolation without real filesystem writes
- [Phase 01-foundation]: Interactive login test marked Skip in unit suite — browser/WAM MSAL flow cannot run in automated CI
### Pending Todos
@@ -89,6 +94,6 @@ None yet.
## Session Continuity
Last session: 2026-04-02T10:19:35.870Z
Stopped at: Completed 01-foundation-05-PLAN.md
Last session: 2026-04-02T10:26:38.487Z
Stopped at: Completed 01-foundation-04-PLAN.md
Resume file: None