From 3548f773c90dc8b2d73513ddfe1552a9487ea30b Mon Sep 17 00:00:00 2001 From: Tobi G Date: Wed, 12 Aug 2026 17:17:15 +0200 Subject: [PATCH] update.ps1: fehlende ios.css/badges-Kopie fixen, Installationspaket-Konzept update.ps1 kopierte audi-dashboard-ios.css und www/badges/ nie, obwohl beide von der laufenden App gebraucht werden - jedes Update seit Einfuehrung dieser Dateien liess den deployten Stand dort veraltet zurueck. Ausserdem zwei verwaiste *.bak-before-audit-merge-Dateien aus www/ entfernt (bereits gitignored, nie versioniert) und installationspaket/ (generiertes, gitignored Deployment-Bundle fuer eine frische HA-Installation) als neuen Ignore-Eintrag ergaenzt. Co-Authored-By: Claude Sonnet 5 --- AGENTS.md | 12 ++++++++++++ homeassistant/.gitignore | 5 +++++ homeassistant/update.ps1 | 14 ++++++++++++-- 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 540247e..abae052 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -353,6 +353,18 @@ capacitor/iframe/browser (`umgebung.ts`), types + entity table (`types.ts`), fac the whole popup partially see-through against the app content behind it. Fixed by switching to `--tile-deckend` (Design's own opaque-surface token, already used by `.standortmenu` for the same reason), with `var(--canvas)` as a defensive fallback. +- [x] Fresh-install packaging + `update.ps1` fix — done 2026-08-12. While preparing a short + quick-install checklist, found that `update.ps1` never copied `audi-dashboard-ios.css` or + `www/badges/*` — both are loaded by the running app (the ios overlay is injected by the app + itself via JS, badges by the model picker since item #51), so every `update.ps1` run since + those were added silently left the deployed copy stale on those two. Fixed (script now copies + both). Also removed two stray `*.bak-before-audit-merge` files from `www/` (already gitignored + at repo root, never committed, just local clutter from an earlier merge). New + `installationspaket/` — a generated, gitignored bundle (pyscript/, www/ minus the two backup + files, data/ with only the example profile + receipt parser, `configuration_snippet.yaml`, + `update.ps1`) plus a short `ANLEITUNG.md` checklist for copying to a fresh HA instance; + `INSTALL.md` stays the authoritative, detailed reference. Regenerate on demand, don't keep it + permanently in sync — it's a deployment snapshot, not a second source of truth. - [ ] Fix remaining documentation drift (statistics claim, README gaps, obsolete TODO comment) — text-only changes; INSTALL.md's WLAN/TommiG1 drift and stale variable names were fixed 2026-08-12 (see section B) diff --git a/homeassistant/.gitignore b/homeassistant/.gitignore index d78e8bb..356efdf 100644 --- a/homeassistant/.gitignore +++ b/homeassistant/.gitignore @@ -6,3 +6,8 @@ data/fahrzeugprofil.json data/fahrten.jsonl data/tankvorgaenge.jsonl data/tests/belege/*.pdf + +# Generiertes Installations-Bundle (nur eine Kopie der bereits getrackten +# pyscript/www/Vorlage-Dateien für den Netzwerk-Kopiervorgang auf eine neue +# HA-Instanz) - bei Bedarf neu zusammenstellen, nicht versionieren. +installationspaket/ diff --git a/homeassistant/update.ps1 b/homeassistant/update.ps1 index 781c807..46bf46e 100644 --- a/homeassistant/update.ps1 +++ b/homeassistant/update.ps1 @@ -11,7 +11,10 @@ geänderte Datei war innerhalb von Millisekunden aktiv, ganz ohne Neustart) - - www/*.js, www/*.css, www/bilder/* -> /www/ + - www/*.js, www/*.css, www/badges/*, www/bilder/* -> /www/ + (audi-dashboard-ios.css nicht vergessen: die App hängt sich dieses + Overlay-Stylesheet selbst per JS in den Shadow-Root - ohne es fehlt + nur der optische Feinschliff, kein Fehler, aber ein veralteter Stand) - www/audi-dashboard-version.json wird IMMER neu geschrieben, mit der aktuellen Uhrzeit als Versionsnummer - der Lade-Stub (audi-dashboard-panel.js) liest diese Datei bei jedem Seitenaufruf @@ -45,11 +48,12 @@ if (-not (Test-Path $Ziel)) { Write-Host "Kopiere pyscript/ ..." -ForegroundColor Cyan robocopy "$hier\pyscript" "$Ziel\pyscript" /MIR /NFL /NDL /NJH /NJS | Out-Null -Write-Host "Kopiere www/ (ohne bilder/, die separat behandelt werden) ..." -ForegroundColor Cyan +Write-Host "Kopiere www/ (ohne bilder/ und badges/, die separat behandelt werden) ..." -ForegroundColor Cyan New-Item -ItemType Directory -Force -Path "$Ziel\www" | Out-Null Copy-Item "$hier\www\audi-dashboard-app.js" "$Ziel\www\audi-dashboard-app.js" -Force Copy-Item "$hier\www\audi-dashboard-panel.js" "$Ziel\www\audi-dashboard-panel.js" -Force Copy-Item "$hier\www\audi-dashboard.css" "$Ziel\www\audi-dashboard.css" -Force +Copy-Item "$hier\www\audi-dashboard-ios.css" "$Ziel\www\audi-dashboard-ios.css" -Force if (Test-Path "$hier\www\bilder") { Write-Host "Kopiere www/bilder/ ..." -ForegroundColor Cyan @@ -57,6 +61,12 @@ if (Test-Path "$hier\www\bilder") { Copy-Item "$hier\www\bilder\*" "$Ziel\www\bilder\" -Force -Recurse } +if (Test-Path "$hier\www\badges") { + Write-Host "Kopiere www/badges/ ..." -ForegroundColor Cyan + New-Item -ItemType Directory -Force -Path "$Ziel\www\badges" | Out-Null + Copy-Item "$hier\www\badges\*" "$Ziel\www\badges\" -Force -Recurse +} + $version = [DateTimeOffset]::UtcNow.ToUnixTimeSeconds() "{ ""version"": $version }" | Out-File -FilePath "$Ziel\www\audi-dashboard-version.json" -Encoding utf8 -NoNewline