Five features, no blockers. Five distinct pain points from the #2 discussion threads of the past week, all shipped together as one coherent release.
Added — Telegram
/help <command>
Per-command detailed help block (#15, @famewolf). The general /help lists every command on one screen; the new variant gives you synopsis, parameters, examples, and side effects for one command. Examples:
/help cleanup → grace-hours behaviour, backup flag, side effects
/help selfupdate → :latest vs <version> vs previous, helper-container model
/help setlink → URL store, OCI label fallback, cross-message effect
20 commands have a detail block. English and German translated; the other 14 languages fall back to English via the existing i18n layer.
/audit <container>
Surface the v1.19.0 inspect-coverage auditor from chat. Previously only available via DEBUG=true log-grep; now you can run it on demand from Telegram. Empty findings = ✅ clean confirmation; non-empty findings come as a list of `HostConfig.` / `Config.` entries plus an "open issue" link.
Added — Web UI
Webhook test buttons
"Send test" button next to DISCORD_WEBHOOK and WEBHOOK_URL on the Settings page. POSTs to /api/test_webhook, sends a 🧪 test message via a one-off Notifier using whatever you typed in the input — so you can debug a new URL before saving it. Result lands as a floating toast. Quiet-hours suppression is bypassed for the test so you actually see the message.
Per-container history filter
The /history page gained a dropdown listing every container that has at least one entry. Selecting one filters the view; the URL carries ?container=<name> so it's deep-linkable from anywhere.
Live cron schedule preview
As you type a CRON expression in Settings, the field shows ⏰ tomorrow 18:00 · Fri 18:00 · Sat 18:00 below it — the next 3 ticks the scheduler would fire at. 300ms-debounced, driven by a new /api/cron_preview endpoint that reuses the exact same matching logic the scheduler runs (Scheduler._matches_cron extracted to module-level cron_matches / cron_next_ticks). Malformed expressions surface as a warning immediately. No more "save and pray it fires when you expect".
Changed
_BOT_COMMANDSgained a 4th tuple elementdetail_key. Backward-compatible only if all callers unpack the full 4-element tuple — the two existing call sites (_register_commands_with_telegramand the/helpbuilder) were updated.UpdateChecker._audit_inspect_coverage()now returns{"host_unknown": [...], "config_unknown": [...]}in addition to logging. Pre-v1.20.0 callers that ignored the return value continue to work unchanged.
Notes
- 21 Telegram commands registered with
setMyCommandsnow (was 20 —/auditis the new entry). - No new env vars, no breaking config changes.
Upgrade
docker pull amayer1983/docksentry:latest
docker compose up -dHard-reload the Web UI (Ctrl+Shift+R) once so the new JS (cron preview, webhook test buttons, toast helper) lands cleanly.