R-1199 reopened: a box with no list of its own reads the household's from the hub and adopts it, pushes its default once only when no household saved one; every push names its source; an empty saved list stays empty; R-1216 (D28 = A): the install page's swap sentence only when host swap is really short (shared case table); unreleased
gates / gates (push) Successful in 1m55s

This commit is contained in:
admin committed 2026-10-22 12:13:26 +02:00
1 parent 08fa440d04
commit add310c80a
13 files changed
+509 -58

No files matched your search

+3 -9
View File
@@ -1889,15 +1889,9 @@ func main() {
// Sync notification preferences to hub on startup (handles hub DB rebuild recovery)
if notifier.IsEnabled() {
go func() {
prefs := sett.GetNotificationPrefs()
// R-922: a household's clear is pushed too, so a clear the hub missed reaches it at the next start.
// R-1199: a box whose household never saved its choice pushes the default list its page shows (with no
// address — the hub keeps the stored one, its no-clobber guard).
if prefsSyncAtStartup(prefs, sett.NotificationPrefsSaved(), logger) {
if err := notifier.SyncPreferences(prefs.Email, prefs.EnabledEvents, prefs.CooldownHours, prefs.EmailCleared); err != nil {
logger.Printf("[WARN] Failed to sync notification preferences on startup: %v", err)
}
}
// R-922 (a saved list's address or clear is re-pushed) and R-1199 reopened (a box with no list of its own
// adopts the household's from the hub, or pushes its default once) — prefs_sync_wiring.go.
startupPrefsSync(notifier, sett, logger)
}()
}