Problem: In prod überschrieben ensureMicrohamSettings und
ensureOpenWebRxBandmapSettings ihre Plugin-Settings bei JEDEM Start aus
ENV → UI-Änderungen gingen bei Deploy/Neustart verloren. rms.wavelog.cat
hatte gar kein ensure* → seine (nicht-geheime) ENV-Config wirkte zwar via
getSetting-Fallback, war aber nie in plugin-state und damit in der Admin-UI
unsichtbar ("funktioniert, wird aber nicht angezeigt").
Fix (Modell: State gewinnt, ENV seedet):
- ensureMicrohamSettings + ensureOpenWebRxBandmapSettings auf fill-if-missing
umgestellt: ENV seedet ein Feld nur, wenn es in plugin-state fehlt; danach
bleibt der gespeicherte/UI-Wert erhalten und überlebt Deploys.
- Neues ensureWavelogSettings (fill-if-missing) seedet baseUrl/radioName/
timeoutMs aus ENV → in der UI sichtbar, UI-Edits persistent.
- vswr-/oauth-ensure* waren bereits fill-if-missing (unverändert).
- Secret-Plugins (SMTP/oauth-Secrets/debug-Token) bewusst NICHT geseedet
(dürfen nicht in plugin-state.json/UI landen).
Hinweis: Dazu gehört eine Deploy-Repo-Änderung (entfernt die per-Deploy-
Löschung der Bandmap-Keys in deploy.yml), sonst würde Bandmap weiter
re-geseedet.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>