# TODO Arbeitsliste auf Basis von `proxmox-console-entwicklungsplan.md`. Die Entwurfsdatei bleibt unveraendert; Fortschritt und Annahmen werden hier gepflegt. ## In Arbeit - [x] E0-T01: Monorepo-Grundgeruest - [x] Ordner fuer `backend/`, `worker/`, `console-proxy/`, `frontend/`, `migrations/`, `deploy/` angelegt - [x] Root-Dateien `README.md`, `CHANGELOG.md`, `.gitignore`, `.env.example` angelegt - [x] Minimale Startpunkte fuer Backend, Worker, Console-Proxy und Frontend angelegt - [x] Lokale Toolchain geprueft: Go 1.26.4 ist im PATH - [x] Erste Build-/Test-Kommandos ausgefuehrt - [x] E0-T02: Lokale Dev-Umgebung mit offizieller Supabase-Self-Hosted-Konfiguration und Redis - [x] `Makefile` mit `dev`, `migrate`, `test`, `lint`, `build`, `frontend-build`, `verify` angelegt - [x] Reduzierten Supabase-Compose-Versuch entfernt - [x] Offizielle Supabase-Self-Hosted-Dateien einbinden - [x] Projekt-spezifische ENV-Datei aus offizieller Vorlage ableiten - [x] Infrastruktur testweise starten - [x] Healthchecks/Erreichbarkeit pruefen ## Naechste Aufgaben - [ ] E0-T03: CI-Pipeline mit Build, Lint, Tests und Secret-Scan - [ ] E0-T04: Konfigurations- und Logging-Layer fuer Go-Dienste - [ ] E2-T01: Migrations-Setup mit `golang-migrate` ## MVP-Backlog - [ ] E1: Supabase Auth, JWT-Middleware und Profil-Sync - [ ] E2: Datenmodell, Migrationen, RLS und VMID-Allokator - [ ] E3: Envelope-Encryption, Cluster-Repository und Proxmox-Client - [ ] E4: RBAC, Policy-Funktion und Autorisierungs-Middleware - [ ] E6: Worker-Grundgeruest und UPID-Polling - [ ] E5: VM-Liste, Detail, Power-Aktionen und Reconciliation - [ ] E7: SSH-Keys, Templates und Provisioning - [ ] E8: Konsolen-Tickets und Websocket-Proxy - [ ] E9: Audit-Writer und Audit-Anzeige - [ ] E10: Frontend-MVP fuer Auth, Projekte, VMs, Wizard und Konsole ## Annahmen - Modulpfad vorlaeufig: `proxui`. Falls spaeter ein Git-Remote/Org-Name feststeht, wird der Go-Modulpfad angepasst. - Supabase wird lokal nicht mehr per reduziertem Eigenbau gestartet; naechster Ansatz ist die offizielle Self-Hosted-Konfiguration. - Offizieller Supabase-Docker-Upstream: `supabase/supabase@996d2b7c1e8ee85ca584160963f26b67d63b7e56`. - Lokaler Host-DB-Zugriff laeuft ueber Supavisor: Session-Port `5432`, Transaction-Port `6543`, Username-Format `postgres.`. - UI-Texte werden Deutsch, Code-Identifier Englisch. ## Verifikation - 2026-06-09: `go work sync` erfolgreich mit lokalem `GOCACHE=.tmp/go-build`. - 2026-06-09: `go test ./backend/... ./worker/... ./console-proxy/...` erfolgreich; aktuell keine Testdateien vorhanden. - 2026-06-09: `go build ./backend/cmd/api ./worker/cmd/worker ./console-proxy/cmd/console-proxy` erfolgreich. - 2026-06-09: `npm install --prefix frontend` erfolgreich; 0 Vulnerabilities. - 2026-06-09: `npm run build --prefix frontend` erfolgreich. - 2026-06-09: `make verify` erfolgreich. - 2026-06-09: Orbstack geprueft: Docker-Kontext `orbstack`, Engine `OrbStack`, Architektur `aarch64`, Docker `29.4.0`. - 2026-06-09: Reduzierter Supabase-Compose-Versuch entfernt; lokale Container und Volumes per `docker compose down -v --remove-orphans` geloescht. - 2026-06-09: Offizielle Supabase-Self-Hosted-Docker-Dateien nach `deploy/supabase/` kopiert; `docker compose config` erfolgreich. - 2026-06-09: `make dev` mit offiziellem Supabase-Stack erfolgreich; alle offiziellen Supabase-Container healthy. - 2026-06-09: `GET /auth/v1/admin/users` ueber Kong mit Service-Role-Key erfolgreich: leere User-Liste statt Studio-Fehler.