docs(15-08): complete Serverseitige Modulsperre und Marketplace-Sperr-Badge plan

This commit is contained in:
2026-08-04 19:53:13 +02:00
parent 2e7daa481e
commit d15475d6d7
4 changed files with 245 additions and 13 deletions
+10 -7
View File
@@ -5,15 +5,15 @@ milestone_name: Ausschreibungs-Radar
current_phase: 15
current_phase_name: modul-berechtigungen-gruppen-user-grants
status: executing
stopped_at: Completed 15-07-PLAN.md
last_updated: "2026-08-04T17:28:00.601Z"
stopped_at: Completed 15-08-PLAN.md
last_updated: "2026-08-04T17:52:39.281Z"
last_activity: 2026-08-04
last_activity_desc: Phase 15 execution started
progress:
total_phases: 15
completed_phases: 13
total_plans: 75
completed_plans: 72
completed_plans: 73
---
# Project State
@@ -28,11 +28,11 @@ See: .planning/PROJECT.md (updated 2026-07-17)
## Current Position
Phase: 15 (modul-berechtigungen-gruppen-user-grants) — EXECUTING
Plan: 7 of 8
Plan: 8 of 8
Status: Ready to execute
Last activity: 2026-08-04 — Phase 15 execution started
Progress: [██████████] 96%
Progress: [██████████] 97%
## Performance Metrics
@@ -106,6 +106,7 @@ Progress: [██████████] 96%
| Phase 15 P03 | 32min | 3 tasks | 8 files |
| Phase 15 P06 | 35min | 3 tasks | 8 files |
| Phase 15 P07 | 30min | 3 tasks | 7 files |
| Phase 15 P08 | 30min | 2 tasks | 12 files |
## Accumulated Context
@@ -251,6 +252,8 @@ Recent decisions affecting current work:
- [Phase ?]: [15-07]: aria-label des Grant-Checkboxes beschreibt die vom Klick ausgeloeste Aktion (granted: String(!isGranted)), nicht den aktuellen Haekchen-Zustand
- [Phase ?]: [15-07]: UserAccessModal leitet Gruppenmitgliedschafts-Chips ausschliesslich aus der Vereinigung aller viaGroups-Namen von GET /module-grants/users/:userId ab, kein zweiter Endpoint
- [Phase ?]: [15-07]: ActivateModuleDialog ruft onSuccess bereits nach dem erfolgreichen activate-Call auf, unabhaengig vom Ausgang des nachfolgenden module-grants-Calls
- [Phase ?]: [15-08]: isAdmin-Gate auf /marketplace und /marketplace/[slug] entfernt (D-08: Katalog bleibt Schaufenster fuer jeden authentifizierten Benutzer) — isAdmin gated jetzt nur noch die Aktivieren/Deaktivieren-Aktion (canManage-Prop)
- [Phase ?]: [15-08]: MarketplaceCard-Klick delegiert an getrennte onOpenDetail/onLockedClick-Callback-Props statt eigener Router-Logik in der Karte — bleibt praesentational und ueber vi.fn() testbar
### Pending Todos
@@ -293,7 +296,7 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-08-04T17:28:00.568Z
Stopped at: Completed 15-07-PLAN.md
Last session: 2026-08-04T17:52:39.252Z
Stopped at: Completed 15-08-PLAN.md
Resume file: None
Last activity: 2026-07-14 - Built LDAP per-user exclude/denylist filter (9d1323f), migration applied on live DB, verified via Playwright: sync deactivated 4 excluded service accounts (administrator/krbtgt/guest/dns-ldap), 2 real LDAP users stay active, 0 wrongly created