Skip to content

aw-notify: settingsStore integration and shared webui config surface #201

Description

@TimeToBuildBob

Follow-up to #199 (merged) — centralising alert configuration so Android shares the same config surface as aw-notify on desktop.

What's missing from the MVP

The NotifyWorker shipped in #199 hardcodes DEFAULT_ALERTS directly in Kotlin. The only server-side setting it reads is startOfDay. Everything else (categories, thresholds, enabled/disabled) requires a code change.

Goals

  1. settingsStore integration — store alert config under /api/0/settings/aw-notify/alerts (or a sub-key of the existing settings namespace). The Android app reads this at worker startup instead of the hardcoded list, matching the server-side config model aw-notify desktop already uses.

  2. Shared webui config surface — once the config lives in the settings API, the aw-webui can expose a config panel identical to (or compatible with) the desktop aw-notify settings, so users manage thresholds in one place regardless of client.

  3. Reduced default thresholds — the current defaults (All at 1h/2h/4h/6h/8h, Work at 15m/30m/1h/2h/4h, etc.) are too dense for most days. Trim to 2–3 thresholds per category max, or align with whatever the desktop aw-notify defaults converge to after aw-notify: smart anomaly-detection notifications (percentile/sigma above baseline) #200 lands.

  4. Migration path — if a user has no server-side config, fall back to a minimal built-in default (not the current verbose list) so first-run behaviour is conservative.

Out of scope here

Cross-references

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions