You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Degrade failing instances at startup instead of exiting the whole app
Previously any single instance failing its startup check terminated
decluttarr via wait_and_exit(), taking healthy instances down with it
and causing container crash-loops on slow servers (ManiMatter#317 follow-up).
Now each unit (arr, qBittorrent, SABnzbd) records a readiness state:
- Transient failures (timeout, connection, 5xx, unknown) degrade the
instance; setup is re-attempted every timer cycle and the instance
rejoins automatically (including its detect_deletions watchers).
- Definitive config errors (401/403, non-English UI, client version
too old) degrade the instance with a per-cycle ERROR + tip; they are
not retried since they cannot heal without user action.
- The app only exits when nothing is configured (unchanged) or when
every configured unit failed definitively.
Wrong-arr-type and arr-version-too-old keep their existing
log-and-continue behavior. Repeated identical setup failures log a
single-line skip instead of the full error block each cycle.
Also fixes main.py handing the deletion watchers to a throwaway
WatcherManager, which left terminate() stopping an instance that owned
no observers.
0 commit comments