Entfernt die letzten Verweise auf die abgeloeste TommiG1/HA_VAG-EU-Data-Act- Integration (Versionstile, Testumgebungs-Fixture) und ersetzt sie durch die FMM003-Werte. Behebt eine CSS-Spezifitaetskollision, durch die alle iOS- Toggle-Switches viel zu breit gerendert wurden. Dokumentiert und behebt sieben Layout-Befunde aus zwei Design-Audit-Runden (Zahnrad-Ueberlauf auf breiten Bildschirmen, zu kleine Ringe als mobiler Einstellungen-Zugang, zu breite Popups, Kopfzeilen-Versatz, ueberlappende Kachel-Pfeile, fehlender Editierbarkeits-Hinweis bei Auswahlfeldern, Haekchen-artige Auf/Zu-Pfeile) - siehe DESIGN_AUDIT_2026-08-13.md fuer Root-Cause und Beleg je Befund. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
testumgebung/ — Wegwerf-Home-Assistant für Entwicklung und Tests
Setzt eine vollständige Home-Assistant-Instanz in Docker auf, in der das
pyscript-Backend dieses Projekts echt läuft: eigene Entitäten, echte Service-Aufrufe,
nachgebildete Fahrzeugsensoren. Gedacht als Ziel für die Abnahmekriterien aus
../UMSETZUNGSPLAN.md (Phasen 1, 6, 9).
Die ursprüngliche Testinstanz aus der Entwicklung des HA-Panels war eine Wegwerfinstanz ohne Skript und ist verloren gegangen — deshalb liegt der Aufbau hier als ausführbares Skript statt als Anleitung.
Aufsetzen
./aufsetzen.sh
Das Skript ist mehrfach ausführbar (löscht einen vorhandenen Container vorher).
Es lädt das offizielle Image, startet den Container auf Port 18123, legt per
API einen Testnutzer an, erzeugt ein langlebiges Zugriffstoken, installiert
pyscript als Custom Component, kopiert ../homeassistant/{pyscript,www,data}
hinein und startet neu.
Am Ende schreibt es das Token nach ../companion-app/.env.local
(Variable VITE_TEST_TOKEN, gitignored) — von dort holen es die
authentifizierten Tests.
Zugang: http://localhost:18123 · Benutzer test · Passwort testtest123
Was nachgebildet wird
konfiguration.yaml bildet zwei Datenquellen als Template-Sensoren nach, damit
das Backend echte Werte sieht. Steuerbar zur Laufzeit über Helfer — damit
lassen sich die @state_trigger-Abläufe wirklich auslösen:
| Helfer | Steuert | Wofür |
|---|---|---|
input_boolean.test_zuendung |
binary_sensor.testzone_fmm003_engine_ignition_or_acc_status |
Fahrterkennung (Start/Ende, einstellungen.ZUENDUNG_SENSOR) |
input_number.test_kilometerstand |
sensor.audi_rs_4_avant_mileage |
Reifenzähler, Fahrtabschluss-Screening (nur bei manueller Zuordnung über das Setup-Menü, KM_SENSOR ist per Default leer) |
input_number.test_tankfuellstand |
sensor.audi_rs_4_avant_fuel_level |
automatische Tankerkennung (nur bei manueller Zuordnung, TANK_SENSOR ist per Default leer) |
input_number.test_reichweite |
sensor.audi_rs_4_avant_range_primary |
Übersichtsanzeige (nur bei manueller Zuordnung, RANGE_SENSOR ist per Default leer) |
input_boolean.test_tuer_vl |
Tür vorne links | „sicher abgestellt" (nur bei manueller Zuordnung) |
input_boolean.test_fenster_vl |
Fenster vorne links | „sicher abgestellt" (nur bei manueller Zuordnung) |
input_boolean.test_entriegelt |
Türschloss vorne links | „sicher abgestellt" (nur bei manueller Zuordnung) |
Die Kilometerstand-/Tankfüllstand-/Reichweite- und Tür-/Fenster-/Schloss-Sensoren
bilden die Entitäten der abgelösten HACS-Integration TommiG1/HA_VAG-EU-Data-Act
nach (siehe einstellungen.py) — für den Standardbetrieb ohne Bedeutung, aber
weiterhin nützlich, um die manuelle Zuordnung über das Setup-Menü zu testen.
Beispiel — Fahrt auslösen (Zündung/ACC an, dann aus):
T=$(grep VITE_TEST_TOKEN ../companion-app/.env.local | cut -d= -f2)
curl -X POST -H "Authorization: Bearer $T" -H "Content-Type: application/json" \
-d '{"entity_id":"input_boolean.test_zuendung"}' \
http://localhost:18123/api/services/input_boolean/turn_on
Aufräumen
docker rm -f audi_ha_test
Die Konfiguration liegt außerhalb des Repos unter dem im Skript gesetzten
ZIEL-Pfad; es werden keine echten Fahrzeugdaten verwendet, sondern
fahrzeugprofil.example.json.