# Vendoo 1.35.0 – Modular Platform Kernel, Design-System Contracts & Security Architecture Foundation

## Ziel

Version 1.35.0 stoppt den unkontrollierten weiteren Ausbau der großen Bestandsdateien und schafft eine verbindliche Plattformarchitektur. Die bestehende Anwendung bleibt funktionsfähig und wird nicht per Big-Bang ersetzt.

## Implementiert

### Plattformkernel

- `app/kernel/platform-kernel.mjs`
- geordneter Start und Stop
- Lifecycle-Rollback bei fehlgeschlagenem Start
- Kernelzustand im Readiness-Check
- geordneter Kernelshutdown vor dem SQLite-Checkpoint

### Modulsystem

- zwölf validierte Bestandsmodule
- Manifestvertrag und JSON-Schema
- Abhängigkeitsauflösung mit Zykluserkennung
- Capability-Prüfung
- eindeutige Ressourcen-Ownership
- Start-Rollback bereits gestarteter Module
- Status `legacy-bridge` für noch nicht vollständig migrierte Bereiche

### Sicherheit

- Policy Engine mit Deny-by-default
- Routenregistrierung nur mit Modulbesitzer und Policy
- standardisierte Plattformfehler mit Request-ID
- geschützte Admin-Endpunkte für Kernel-, Modul- und Theme-Vertragsstatus
- Owner-basierter Event-Bus
- feste Feature-Flag-Registrierung
- isolierter Extension-Host bleibt standardmäßig deaktiviert

### Design-System

- 33 versionierte Design Tokens
- Light, Dark und High Contrast
- deterministische CSS- und Vertragsgenerierung
- Kompatibilitätsbrücke zu bestehenden CSS-Variablen
- Browser-Theme-Runtime mit Systempräferenz
- sichere Backend-Validierung für künftige Theme-Definitionen
- kein freies CSS, JavaScript oder externe URL-Werte

### Frontend-Verträge

- Frontend Module Registry mit `mount`/`unmount`
- Listener-Cleanup über `AbortController`
- Safe-DOM-Helfer auf Basis von `textContent`
- zentraler zukünftiger API-Client mit Same-Origin-Credentials, CSRF und standardisierten Fehlern

## Neue interne Endpunkte

Nur Benutzer mit `security.manage`:

- `GET /api/security/platform`
- `GET /api/security/platform/modules`
- `GET /api/security/platform/theme-contract`

## Nicht behauptet

Version 1.35.0 ist die Foundation, nicht die vollständige Migration. `server.mjs`, `public/app.js`, `public/style.css` und `lib/db.mjs` bleiben weiterhin groß. Die Fachmodule werden ab 1.38.0 einzeln migriert. Der sichtbare Theme Manager folgt in einem eigenen Release.
