Release v0.7.2 — Settings polish + container CRUD

- Containers can now be added, edited, and removed from the UI
  (/containers/new and the delete button on /containers/<name>).
  No more manual config.yml edits for normal container work.
- Test-notification buttons on Gotify and Pushover sections.
  Uses live form values and surfaces HTTP errors.
- Toggle switches replace enabled checkboxes.
- Priority reference block with Pushover mapping.
- Config diagnostics strip (path + writable badge + version) on
  every settings page — catches read-only bind mounts.
- Containers listed in the settings left rail.
- Color input: 10 swatches + native color picker + hex text.
- Status page no longer prints the "auto-refreshes" text.
This commit is contained in:
Europium 63 committed 2026-10-27 10:30:07 -07:00
1 parent 48e913e5d5
commit c6d2a67a4b
3 files changed
+611 -46

No files matched your search

+44
View File
@@ -7,6 +7,50 @@ Version numbers follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html
---
## [0.7.2] — 2026-10-27
### Added
- **Container CRUD from the UI.** `/containers/new` adds a new container to
`config.yml`; a delete button on `/containers/<name>` removes one. The config
change is picked up on the next polling cycle without a restart.
- **Test-notification buttons** on the Gotify and Pushover sub-sections. The
button posts the current (unsaved) form values to `POST /api/test-notify/<channel>`
and shows the result inline. Unlike the regular notifier it does not swallow
errors — HTTP failures are reported back to the UI.
- **Priority reference** block on the Notifications section, including the
Inspector → Pushover `-2..2` mapping.
- **Config diagnostics strip** at the bottom of every settings page: shows the
live `config.yml` path, whether it's writable, and the Inspector version. If
the bind mount is read-only (a common deployment misconfiguration — a `:ro`
mount means saves fail silently) a red `READ-ONLY` badge appears with a hint.
- **Containers listed in the settings left rail** under their own group, plus a
"+ Add container" link, so you can jump between sections and containers from
the same navigation.
- **Color input upgrade** on container edit / new forms: ten preset color swatches,
a native color picker, and the existing hex text field, all bound together.
### Changed
- **Toggle switches** replace the stock checkbox + "requires restart" layout for
all `enabled`-style fields (notifications, dashboard, database, health summary,
maintenance, notification mute, container enabled, Inspector `dry_run` /
`heartbeat`). Reads much cleaner.
- **Status page** no longer prints "auto-refreshes every 30s" (the `<meta refresh>`
still ticks every 30s).
### Internal
- `_apply_container_create()` + `_apply_container_delete()` helpers alongside the
existing `_apply_settings_update()`; container names are validated against
`^[a-zA-Z0-9][a-zA-Z0-9_-]{0,62}$` and rejected if duplicate.
- `_render_diag_strip()` uses `os.access(path, os.W_OK)` to detect read-only mounts.
- Test-notification bypasses `GotifyNotifier.notify()` / `PushoverNotifier.notify()`
so HTTP failures are surfaced (the real notifier intentionally swallows them to
avoid breaking the inspector loop).
---
## [0.7.1] — 2026-10-27
### Changed