Fix: Chip-Sichtbarkeit geräteübergreifend konsistent

Root cause: _mergeDefaults() interpretierte fehlende Chips als 'neu'
und fügte sie wieder ein — auch bewusst ausgeblendete.

Fix:
- _saveConfig(): berechnet cfg.hidden = alle Default-Chips die keiner
  Welt zugewiesen sind; wird mit der Config auf dem Server gespeichert
- _mergeDefaults(): prüft hidden-Set und allAssigned-Set; fügt nur echte
  Neu-Chips ein (nicht in hidden, nicht bereits anderer Welt zugewiesen)
- Verhindert auch Doppelzuweisung wenn ein Chip zwischen Welten verschoben

SW by-v1001, APP_VER 1001
This commit is contained in:
rene 2026-05-15 19:08:34 +02:00
parent 2caab31797
commit f962cf2f4d
4 changed files with 19 additions and 6 deletions

View file

@ -410,7 +410,7 @@ async def serve_media(path: str, request: _Request):
raise _HE(404, "Nicht gefunden.")
return _media_response(filepath)
APP_VER = "1000" # muss mit APP_VER in app.js übereinstimmen
APP_VER = "1001" # muss mit APP_VER in app.js übereinstimmen
@app.get("/.well-known/assetlinks.json")
async def assetlinks():