install.ps1 warnt vor einem veralteten OTA-Bündel
Beim Prüfen, ob die GitHub-Entfernung eine Versionserhöhung brauchte, fiel eine echte Lücke auf: nichts hielt frontend/app/bundle.json auf demselben Stand wie manifest.json. Bei der nächsten echten Versionserhöhung ohne "npm run ota" hätte das zu einem stillen Widerspruch geführt - die Hinweisleiste hätte "veraltet" gemeldet (liest die Version live), die Update-Seite "aktuell" (vergleicht gegen das eingefrorene, dann falsche Bündel) -, ohne dass ein Update über OTA erreichbar gewesen wäre, bis jemand den Widerspruch bemerkt. install.ps1 liest jetzt direkt nach der Manifest-Version auch frontend/app/bundle.json und vergleicht. Bei Abweichung: deutliche Warnung plus erster Eintrag in der Restliste. Fehlt das Bündel ganz, passiert nichts - OTA ist optional, das ist der normale Zustand. Beide Pfade an einem Mock-Zielordner geprüft: passende Versionen melden "OTA-Bündel passt zur Integration" ohne Restliste-Eintrag; eine testweise erhöhte Manifest-Version (danach byte-genau zurückgesetzt, gegen HEAD gegengeprüft) erzeugt die Warnung und landet als Restliste-Punkt 1. VERSIONIERUNG.md: "Was du tun musst" nennt den OTA-Neubau jetzt als eigenen nummerierten Schritt, statt ihn ganz auszulassen. Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
+18
-5
@@ -88,13 +88,26 @@ ohne Netz darf keinen Fehlalarm auslösen.
|
||||
1. `version` in `manifest.json` erhöhen — bei mehreren Änderungen am selben Tag
|
||||
die laufende Nummer: `2026.8.23.2` → `2026.8.23.3`, am nächsten Tag
|
||||
`2026.8.24.1`.
|
||||
2. Integration ausliefern: `homeassistant\installationspaket\Installieren.cmd`
|
||||
2. **OTA-Bündel neu bauen: `npm run ota`** (in `companion-app/`). Baut die
|
||||
Oberfläche und packt sie mit der neuen Versionsnummer — siehe
|
||||
[OTA-Updates](#ota-updates-seit-2026-08-24) unten. Ohne diesen Schritt
|
||||
trägt `frontend/app/bundle.json` noch die alte Nummer: die Hinweisleiste
|
||||
sagt dann „du bist veraltet" (liest die Version live), die Update-Seite
|
||||
sagt „du bist aktuell" (vergleicht gegen das eingefrorene, jetzt falsche
|
||||
Bündel) — ein Widerspruch, aus dem es ohne diesen Schritt keinen Ausweg
|
||||
gibt. `install.ps1` prüft das seit 2026-08-24 selbst und warnt, falls
|
||||
vergessen — aber besser, es passiert gar nicht erst.
|
||||
3. Integration ausliefern: `homeassistant\installationspaket\Installieren.cmd`
|
||||
(HACS scheidet aus — siehe Kasten oben, das Repository ist privat).
|
||||
3. iOS-App neu bauen (`npm run build`), damit sie dieselbe Zahl einkompiliert
|
||||
bekommt.
|
||||
4. iOS-App für Xcode neu bauen (`npm run build`), damit eine über App Store
|
||||
Connect / Sideload signierte Fassung dieselbe Zahl einkompiliert bekommt.
|
||||
Für alle, die die App schon installiert haben, erledigt Schritt 2 das
|
||||
automatisch über OTA — dieser Schritt ist nur für die nächste
|
||||
Neuinstallation oder Signatur-Erneuerung nötig.
|
||||
|
||||
Vergisst du Schritt 3, ist das kein stiller Fehler mehr: die App meldet selbst,
|
||||
dass sie älter ist als der Server.
|
||||
Vergisst du Schritt 4, ist das kein stiller Fehler mehr: die App meldet selbst,
|
||||
dass sie älter ist als der Server. Vergisst du Schritt 2, bleibt es leider
|
||||
still — deshalb die Prüfung in `install.ps1`.
|
||||
|
||||
**Bei einer reinen Neuinstallation** ohne Codeänderung: nichts tun.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user