docs(10-02): complete Graph user directory service plan

- SUMMARY: GraphDirectoryUser model, IGraphUserDirectoryService, GraphUserDirectoryService with PageIterator
- STATE: decisions added, session updated, progress bar updated
- ROADMAP: phase 10 marked In Progress (2/3 summaries)
- REQUIREMENTS: BRAND-06 marked complete
- Deferred: BrandingServiceTests.cs blocking test compilation (pre-existing, plan 10-01 artifact)
This commit is contained in:
Dev
2026-04-08 12:33:33 +02:00
parent 130386622f
commit 188a8a7fff
5 changed files with 155 additions and 12 deletions

View File

@@ -1,16 +1,16 @@
---
gsd_state_version: 1.0
milestone: v2.2
milestone_name: v2.2 Report Branding & User Directory
status: roadmap-ready
stopped_at: Roadmap created — ready to plan Phase 10
last_updated: "2026-04-08T00:00:00Z"
last_activity: 2026-04-08 — Roadmap created for v2.2 (Phases 10-14)
milestone_name: Report Branding & User Directory
status: planning
stopped_at: Completed 10-branding-data-foundation-02-PLAN.md
last_updated: "2026-04-08T10:33:30.250Z"
last_activity: 2026-04-08 — Roadmap created for v2.2
progress:
total_phases: 5
completed_phases: 0
total_plans: 0
completed_plans: 0
total_plans: 3
completed_plans: 2
---
# Project State
@@ -52,6 +52,9 @@ Decisions are logged in PROJECT.md Key Decisions table.
- Global site selection (Phase 6) changes the toolbar; all tabs bind to shared `GlobalSiteSelectionViewModel`. `WeakReferenceMessenger` for cross-tab site-changed notifications.
- Per-tab override (SITE-02): each `FeatureViewModelBase` subclass stores a nullable local site override; null means "use global".
- Storage Visualization (Phase 9): LiveCharts2, WPF-native, self-contained friendly.
- [Phase 10-branding-data-foundation]: No ConsistencyLevel header on equality filter for GetUsersAsync (unlike GraphUserSearchService startsWith which requires it)
- [Phase 10-branding-data-foundation]: MapUser extracted as internal static in GraphUserDirectoryService for direct unit testability without live Graph endpoint
- [Phase 10-branding-data-foundation]: Type alias AppGraphClientFactory used in GraphUserDirectoryService to disambiguate from Microsoft.Graph.GraphClientFactory
### Pending Todos
@@ -66,7 +69,7 @@ None.
## Session Continuity
Last session: 2026-04-08
Stopped at: Roadmap created for v2.2 — ready to plan Phase 10
Last session: 2026-04-08T10:33:19.924Z
Stopped at: Completed 10-branding-data-foundation-02-PLAN.md
Resume file: None
Next step: `/gsd:plan-phase 10`