spawner/docs/versions/CHANGELOG.md
XPS\Micro 1b44bb3d10 Update documentation for v0.3.0 (admin features)
- CHANGELOG.md: Add v0.3.0 with admin dashboard, email verification,
  user states, and all new features
- install/README.md: Add SMTP configuration variables
- README.md: Update version to 0.3.0

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 07:06:13 +01:00

5.6 KiB

Changelog

Alle nennenswerten Aenderungen werden in dieser Datei dokumentiert.

Das Format basiert auf Keep a Changelog.


Unreleased

Hinzugefuegt

  • Dokumentationsstruktur mit mehreren Kategorien
  • Automatisches Installationsskript (install.sh)
  • .env.example Vorlage

Geaendert

  • doc/ Verzeichnis umbenannt zu docs/
  • README.md ueberarbeitet mit Schnellstart-Anleitung

[0.3.0] - 2026-01-31

Hinzugefuegt

  • Admin-Dashboard: Vollstaendige Benutzerverwaltung fuer Admins
    • Benutzer sperren/entsperren
    • Passwoerter zuruecksetzen (sendet Email)
    • Benutzer-Container loeschen
    • Benutzer loeschen
    • Verifizierungs-Emails erneut senden
  • Email-Verifizierung: Neue Benutzer muessen Email bestaetigen
    • Verifizierungs-Email bei Registrierung
    • OneTimeToken-basierte Verifizierung
    • verify-success und verify-error Seiten
  • Erster User wird Admin: Der erste registrierte Benutzer erhaelt Admin-Rechte
  • Benutzer-States: registered → verified → active
  • Aktivitaetstracking: last_used Feld fuer letzten Container-Zugriff
  • Farbcodierte Benutzerliste im Admin-Dashboard:
    • Gruen: Aktiv, kuerzlich genutzt
    • Gelb: Warnung (unverifiziert/inaktiv)
    • Rot: Kritisch (lange unverifiziert/sehr lange inaktiv)
  • SMTP-Konfiguration: Email-Versand fuer Verifizierung und Passwort-Reset
  • Admin-API Endpoints:
    • GET /api/admin/users - Alle Benutzer auflisten
    • POST /api/admin/users/{id}/block - Benutzer sperren
    • POST /api/admin/users/{id}/unblock - Benutzer entsperren
    • POST /api/admin/users/{id}/reset-password - Passwort zuruecksetzen
    • POST /api/admin/users/{id}/resend-verification - Verifizierungs-Email senden
    • DELETE /api/admin/users/{id}/container - Container loeschen
    • DELETE /api/admin/users/{id} - Benutzer loeschen
    • POST /api/admin/users/{id}/takeover - Container-Zugriff (Dummy, Phase 2)
  • Neue Backend-Dateien:
    • admin_api.py - Admin-Blueprint mit Endpoints
    • decorators.py - @admin_required und @verified_required Decorator
    • email_service.py - Email-Versand-Service
  • Neue Frontend-Seiten:
    • /admin - Admin-Dashboard
    • /verify-success - Email-Verifizierung erfolgreich
    • /verify-error - Email-Verifizierung fehlgeschlagen

Geaendert

  • models.py: Neue Felder (is_admin, is_blocked, state, last_used, verification_token), UserState Enum, AdminTakeoverSession Model
  • config.py: SMTP-Konfiguration, FRONTEND_URL
  • api.py: Signup sendet Verifizierungs-Email (kein Auto-Login mehr), Login prueft Blockade und Verifizierung
  • app.py: Admin-Blueprint registriert
  • .env.example: SMTP-Variablen hinzugefuegt
  • Frontend api.ts: Admin-API-Funktionen
  • Frontend use-auth.tsx: User-Interface mit is_admin und state
  • Frontend signup/page.tsx: Zeigt Verifizierungs-Hinweise nach Registrierung
  • Frontend login/page.tsx: Option zum erneuten Senden der Verifizierungs-Email
  • Frontend dashboard/page.tsx: Admin-Link fuer Admins

Sicherheit

  • Blockierte Benutzer koennen sich nicht mehr anmelden
  • Unverifizierte Benutzer koennen sich nicht anmelden
  • Admins koennen sich nicht selbst sperren oder loeschen
  • Admins koennen andere Admins nicht loeschen
  • Verification-Token ist einmalig verwendbar (OneTimeToken)

[0.2.0] - 2026-01-31

Hinzugefuegt

  • Synology NAS / BusyBox Kompatibilitaet im Installationsskript
  • Automatische Docker-Version Pruefung (>= 20.10)
  • Automatische Docker Compose Version Pruefung (>= 2.0)
  • Traefik-Laufzeit-Pruefung im Installationsskript
  • Traefik-Netzwerk-Verbindungspruefung
  • Build-Fortschrittsanzeige mit gefilterten Logs
  • Automatische git safe.directory Konfiguration fuer NAS-Umgebungen

Geaendert

  • auth.py: Redirect zum Frontend statt Jinja2-Templates
  • docker-compose.yml: Legacy-Router entfernt (verhindert Redirect-Loop)
  • Dockerfiles: Fallback auf npm install wenn package-lock.json fehlt
  • --progress=plain Flag entfernt (nicht kompatibel mit aelteren Docker-Versionen)
  • Build-Verifikation prueft jetzt Exit-Code UND Image-Existenz

Behoben

  • Redirect-Loop bei /login und /signup behoben
  • @/lib/utils Module-Not-Found Fehler in Next.js Projekten
  • .gitignore blockierte frontend/src/lib/ und user-template-next/src/lib/
  • tsconfig.json fehlte baseUrl fuer TypeScript Path Aliases
  • Docker Build meldete faelschlicherweise "OK" bei Fehlern

Entfernt

  • templates/ Verzeichnis (alte Jinja2 Templates, ersetzt durch Next.js Frontend)

Sicherheit

  • Keine sensiblen Dateien (.env, CLAUDE.md) werden ins Repository kopiert

0.1.0 - 2026-01-30

Hinzugefuegt

  • Flask-Anwendung mit User-Management
  • Docker-Container-Spawning pro User
  • Traefik-Integration via Labels
  • SQLite-Datenbank fuer User-Daten
  • Next.js Frontend
  • REST-API fuer Container-Management
  • User-Template (nginx-basiert)
  • Health-Check Endpoint
  • Docker-Compose Setup

Sicherheit

  • Passwort-Hashing mit Werkzeug
  • Session-Cookies mit HttpOnly/Secure
  • Resource-Limits fuer Container

0.0.1 - 2026-01-27

Hinzugefuegt

  • Initiales Projekt-Setup
  • Grundlegende Dokumentation

Legende

  • Hinzugefuegt: Neue Features
  • Geaendert: Aenderungen an bestehenden Features
  • Veraltet: Features die bald entfernt werden
  • Entfernt: Entfernte Features
  • Behoben: Bugfixes
  • Sicherheit: Sicherheitsrelevante Aenderungen