diff --git a/.planning/.continue-here.md b/.planning/.continue-here.md
deleted file mode 100644
index 5628ade..0000000
--- a/.planning/.continue-here.md
+++ /dev/null
@@ -1,61 +0,0 @@
----
-context: default
-phase: post-v1.0
-status: paused
-last_updated: 2026-06-26T10:30:00Z
----
-
-# BLOCKING CONSTRAINTS — Read Before Anything Else
-
-_None identified this session._
-
-
-Session-Ende nach UI-Umbau. Nächste Aufgabe: DKV Flottenkosten-Modul planen.
-User hat Daten in user-files/ bereitgestellt. Planung wurde wegen Kontext-Limit verschoben.
-
-
-
-
-- Sidebar umgebaut: Footer entfernt (User-Info, Einstellungen-Button, Locale-Switcher), Admin-Bereich entfernt
-- Kategorien: "Kategorien"-Header statisch, einzelne Kategorien mit eigenem Chevron-Toggle (einklappbar)
-- Header-Dropdown: Einzelne Admin-Links ersetzt durch einen "Administrator"-Eintrag
-- Admin-Bereich: Eigenes Layout `/admin/layout.tsx` + `AdminSidebar` — identisches Pattern wie Einstellungen
-- Frontend-Schutz: Delete-Button deaktiviert wenn user.id === currentUser.id (Backend war bereits geschützt)
-- Alle Änderungen committed (ba02b25) und gepusht
-
-
-
-
-- DKV Flottenkosten-Modul planen (nächste Session)
- - Offene Fragen in HANDOFF.json dokumentiert
- - Daten in user-files/ vorhanden
-
-
-
-
-- Admin-Navigation als eigene Seite (wie Einstellungen) statt Dropdown-Untermenü
-- Self-Delete nur im Frontend geblockt — Backend wirft bereits ForbiddenException
-
-
-
-Keine.
-
-
-## Required Reading (in order)
-1. `.planning/HANDOFF.json` — DKV-Modul Kontext, offene Fragen, Dateibeschreibungen
-2. `user-files/` — DKV-Rechnung (PDF), Fahrzeugdaten (xlsx), Screenshot Referenz-Tool
-
-## Infrastructure State
-- Docker-Stack läuft: web (Port 3000), api (Port 3001), db
-- Letzter Build: ba02b25 — Admin-Layout + Sidebar-Umbau
-
-
-User will DKV-Flottenkosten-Modul bauen. Hat DKV E-Rechnung (April 2026, 5 Seiten, 3.666,40 EUR),
-Fahrzeugstammdaten (xlsx bereinigt/roh) und Screenshot eines bestehenden Fleet-Tools bereitgestellt.
-Modulplanung noch nicht gestartet — erst Anforderungen klären (was soll es können?).
-
-
-
-Start mit: User fragen was das Modul konkret können soll (Import, Auswertung, Export?),
-dann /gsd-discuss-phase oder direkt /gsd-plan-phase für das DKV-Modul.
-
diff --git a/.planning/HANDOFF.json b/.planning/HANDOFF.json
deleted file mode 100644
index 6eb888b..0000000
--- a/.planning/HANDOFF.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "version": "1.0",
- "timestamp": "2026-07-02T06:21:28.260Z",
- "phase": "09",
- "phase_name": "cert-manager-module",
- "phase_dir": ".planning/phases/09-cert-manager-module",
- "plan": null,
- "task": null,
- "total_tasks": null,
- "status": "paused",
- "completed_tasks": [
- {"id": 1, "name": "Phase 09 alle 6 Pläne ausgeführt (Waves 1–5)", "status": "done", "commit": "daff82e"},
- {"id": 2, "name": "09-UAT.md erstellt, Playwright-Check durchgeführt", "status": "done", "commit": "in_memory"}
- ],
- "remaining_tasks": [
- {"id": 3, "name": "API-Container neu bauen: docker compose build api && docker compose up -d api", "status": "not_started"},
- {"id": 4, "name": "Prüfen: 'Cert-Manager module seeded in registry' in docker logs", "status": "not_started"},
- {"id": 5, "name": "Cert-Manager im Marketplace aktivieren (Tenant: Default)", "status": "not_started"},
- {"id": 6, "name": "UAT fortsetzen: /gsd-verify-work 9", "status": "not_started"}
- ],
- "blockers": [
- {
- "description": "Docker API-Container läuft alten Build — CertManagerModule nicht deployed. Keine cert-manager Routes, kein Seed. Marketplace zeigt nur dkv-fleet + domaincheck.",
- "type": "human_action",
- "workaround": "docker compose build api && docker compose up -d api"
- }
- ],
- "async_jobs": [],
- "human_actions_pending": [
- {
- "action": "docker compose build api && docker compose up -d api",
- "context": "Phase-09-Code (CertManagerModule) nicht im laufenden Container. Rebuild erforderlich vor UAT.",
- "blocking": true
- }
- ],
- "decisions": [
- {"decision": "forge.pkcs12.toPkcs12Asn1(null, certs, password) funktioniert in node-forge 1.4.0 — null-key PFX liefert cert-only PKCS12", "rationale": "Open Question 1 resolved", "phase": "09"},
- {"decision": "DER-Encoding: bytesToHex → Buffer.from(hex,'hex') → base64", "rationale": "Pitfall 1 — nie utf-8 roundtrip für Binary", "phase": "09"},
- {"decision": "expect.extend(matchers) explizit in web vitest setup.ts", "rationale": "Vitest 4.x Bug — jest-dom extends nicht automatisch", "phase": "09"}
- ],
- "uncommitted_files": [
- ".mcp.json",
- "apps/api/src/auth/auth.service.ts",
- "apps/api/src/user/user.controller.ts",
- "apps/web/src/components/dashboard/dashboard-grid.tsx",
- "apps/web/src/components/dashboard/widgets/note-widget.tsx",
- "apps/web/src/components/dashboard/widgets/widget-wrapper.tsx",
- "apps/web/src/components/settings/account-settings-form.tsx",
- "apps/web/src/lib/auth-actions.ts",
- "apps/web/src/lib/stores/dashboard-store.ts"
- ],
- "next_action": "docker compose build api && docker compose up -d api — dann /gsd-verify-work 9",
- "context_notes": "Phase 09 vollständig implementiert (6/6 Pläne, alle Tests grün: 27 API + 19 Web). UAT gestartet aber geblockt durch alten Docker-Build. Uncommitted files aus früheren Sessions — NICHT Phase-09-spezifisch, nicht committen."
-}
diff --git a/.planning/phases/09-cert-manager-module/.continue-here.md b/.planning/phases/09-cert-manager-module/.continue-here.md
deleted file mode 100644
index 2df1d0c..0000000
--- a/.planning/phases/09-cert-manager-module/.continue-here.md
+++ /dev/null
@@ -1,69 +0,0 @@
----
-context: phase
-phase: 09-cert-manager-module
-task: null
-total_tasks: null
-status: paused
-last_updated: 2026-07-02T06:21:28.260Z
----
-
-# BLOCKING CONSTRAINTS — Read Before Anything Else
-
-_Keine blocking constraints aus der Implementierung._
-
-
-Phase 09 vollständig implementiert (6/6 Pläne, 27 API + 19 Web-Tests grün).
-UAT gestartet (09-UAT.md) aber geblockt:
-Docker API-Container läuft alten Build — CertManagerModule nicht deployed.
-Keine cert-manager Routes, kein Seed. Marketplace zeigt nur 2 Module.
-
-
-
-
-- Wave 1 (09-01+02): API Foundation + Web Shell 4-Tabs
-- Wave 2 (09-03): parseCert PEM/DER/PFX/P7B + InspectTab (TDD RED→GREEN)
-- Wave 3 (09-04): splitCerts fullchain+P7B + SplitTab
-- Wave 4 (09-05): convertCert PEM↔DER↔P7B + ConvertTab
-- Wave 5 (09-06): mergeCerts PEM-Kette + Passwort-PFX + MergeTab
-- 09-UAT.md: 8 Tests definiert, status: partial
-
-
-
-
-**Vor Resume (manuell):**
-```bash
-docker compose build api && docker compose up -d api
-docker logs tessera-ctl-api-1 | grep "Cert-Manager"
-```
-Dann: Marketplace → cert-manager aktivieren (Tenant: Default)
-Dann: `/gsd-verify-work 9`
-
-
-
-
-- forge.pkcs12.toPkcs12Asn1(null, certs, password) funktioniert — null-key PFX OK (Open Question 1 resolved)
-- DER: bytesToHex → Buffer.from(hex,'hex') → base64 (Pitfall 1 — nie utf-8)
-- expect.extend(matchers) explizit in web vitest setup.ts (Vitest 4.x Bug)
-
-
-
-
-- Docker-Build veraltet: `docker compose build api && docker compose up -d api` nötig
-- Uncommitted files aus alten Sessions (auth, dashboard etc.) — NICHT committen
-
-
-## Required Reading
-1. `.planning/phases/09-cert-manager-module/09-UAT.md` — 8 Tests, alle pending
-
-## Infrastructure State
-- Docker: web (3000) OK; api (3001) läuft mit ALTEM Build (kein CertManagerModule)
-- git: main, HEAD daff82e
-- Uncommitted (ignorieren): .mcp.json, auth.service.ts, user.controller.ts, dashboard-*.tsx, widget-wrapper.tsx, account-settings-form.tsx, auth-actions.ts, dashboard-store.ts
-
-
-Phase 09 code-seitig fertig. Einziger offener Punkt: Docker rebuild + UAT.
-
-
-
-docker compose build api && docker compose up -d api — dann /gsd-verify-work 9
-