feat: add short IDs to alert results with !alert info command

Each alert result gets a deterministic 8-char base36 ID derived from
backend:item_id. IDs appear in announcements and history, and can be
looked up with !alert info <id> for full details. Existing rows are
backfilled on startup.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
user
2026-02-15 23:20:56 +01:00
parent 5ded8186dd
commit daa3370433
3 changed files with 86 additions and 18 deletions

View File

@@ -342,6 +342,7 @@ No API credentials needed (uses public GQL endpoint).
!alert del <name> # Remove alert (admin)
!alert list # List alerts
!alert check <name> # Force-poll now
!alert info <id> # Show full result details
!alert history <name> [n] # Show recent results (default 5)
```
@@ -350,8 +351,9 @@ Reddit (rd), Mastodon (ft), DuckDuckGo (dg), Google News (gn), Kick (kk),
Dailymotion (dm), PeerTube (pt), Bluesky (bs), Lemmy (ly), Odysee (od),
Archive.org (ia), Hacker News (hn), GitHub (gh). Names: lowercase alphanumeric +
hyphens, 1-20 chars. Keywords: 1-100 chars. Max 20 alerts/channel. Polls every
5min. Format: `[name/yt] Title -- URL`, etc. No API credentials needed. Persists
across restarts. History stored in `data/alert_history.db`.
5min. Format: `[name/yt/a8k2m] Title -- URL`. Use `!alert info <id>` to see full
details. No API credentials needed. Persists across restarts. History stored in
`data/alert_history.db`.
## SearX