---
context: phase
phase: 09-cert-manager-module
task: null
total_tasks: null
status: planning
last_updated: 2026-07-01T13:42:33.474Z
---
# BLOCKING CONSTRAINTS — Read Before Anything Else
_No blocking constraints identified this session._
Phase 9 (Cert Manager Module) ist vollständig besprochen und CONTEXT.md geschrieben.
plan-phase wurde gestartet, aber durch den UI-SPEC Safety Gate blockiert — UI-SPEC.md fehlt noch.
Nächster Schritt: `/gsd-ui-phase 9` ausführen, dann `/gsd-plan-phase 9`.
- Dashboard-Grid-Fix: `compactType={null}` → `compactor={noCompactor}` (react-grid-layout v2 API) — deployed
- Phase 9 zu ROADMAP.md hinzugefügt (commit a32f5f9)
- `09-CONTEXT.md` mit allen Entscheidungen erstellt (commit a32f5f9)
- plan-phase initialisiert → UI-SPEC-Gate erkannt und korrekt geblockt
1. `/gsd-ui-phase 9` — UI-Design-Kontrakt (UI-SPEC.md) erstellen
2. `/gsd-plan-phase 9` — Pläne erstellen (nach UI-SPEC)
3. `/gsd-execute-phase 9` — Implementierung
- **Verarbeitung**: Server-seitig (NestJS API), nicht client-seitig
- **Persistenz**: Ephemer — kein DB, kein Dateisystem, alles In-Memory
- **"Teilen"** = Aufteilen (fullchain → Einzelzertifikate), NICHT Versenden
- **Zusammenführen** = PEM-Kette ODER PFX-Bundle (mit Passwort)
- **Bibliothek**: `node-forge` (pure JS, PEM/DER/PFX/P7B)
- **Passwort**: Konditionell bei PFX/PKCS12 (lesen + erstellen)
- **UI**: 4 Tabs — Analysieren / Aufteilen / Zusammenführen / Konvertieren
- **API**: 4 Endpoints: `/parse` `/split` `/merge` `/convert` unter `/modules/cert-manager`
- **Modul**: slug=`cert-manager`, category=`security-tools`
- **Muster**: Domaincheck-Modul als Vorlage (OnModuleInit seed, @UseModule guard)
- UI-SPEC.md fehlt → plan-phase UI-Safety-Gate blockiert
- Workaround: `/gsd-plan-phase 9 --skip-ui` (nicht empfohlen)
## Required Reading (in order)
1. `.planning/phases/09-cert-manager-module/09-CONTEXT.md` — alle Entscheidungen
2. `apps/api/src/domaincheck/` — Modul-Pattern (NestJS)
3. `apps/web/src/app/(portal)/modules/domaincheck/` — Frontend-Pattern
## Infrastructure State
- Docker: alle Container laufen (web, api, db)
- dashboard-grid.tsx: `compactor={noCompactor}` — deployed und aktiv
Phase 9 Cert Manager: vollständig geplant auf Konzeptebene. Bereit zur UI-Spec-Erstellung.
Uncommitted files aus früheren Sessions (auth, user-controller, dashboard-store etc.) existieren noch — nicht Teil von Phase 9.
Start with: `/gsd-ui-phase 9` — UI-Design-Kontrakt für Cert Manager erstellen
Then: `/gsd-plan-phase 9`