Commit graph

9 commits

Author SHA1 Message Date
bd3c655a80 feat: live auto-updating dashboard in /watch with top stealth and new models 2026-09-27 18:19:25 +05:30
7425895931 feat: show pricing per 1M tokens in model inspects 2026-09-27 17:57:46 +05:30
d8163174fd feat: rename to /free-models, allow @everyone and custom roles, add number commas 2026-09-27 17:25:11 +05:30
85bc9e62f6 feat: add interactive pagination buttons, model autocomplete, and web links 2026-09-27 15:33:49 +05:30
da20cb537b feat: add CI workflow, Docker deployment, and comprehensive documentation 2026-09-27 15:24:22 +05:30
f08ec5c02c fix: bound queued alerts, surface refresh errors, and shut down gracefully
- Cap each subscription's pending queue at MAX_PENDING (50) so a channel that can
  no longer receive messages cannot grow state.json without limit. prune_pending
  also runs after appending, so a single poll cannot push the queue past the limit.
- Log the actual error from refresh() and deliver() in the poll loop and from the
  framework on_error handler; both discarded it, leaving a stalled refresh with no
  diagnosable cause.
- Handle SIGTERM as well as Ctrl+C so container runtimes can stop the bot between
  commits instead of killing it mid-write.

Adds regression tests for the queue bound in both prune_pending and updated().
2026-09-20 01:47:45 +05:30
6ffdb4ca4f feat: add presentation formatting, filter options, and testping command 2026-09-17 12:11:12 +05:30
34d54b5c45 feat: implement catalog monitoring, alerts delivery, and slash commands 2026-09-17 08:09:28 +05:30
ee78de7923 initial commit: OpenRouter free model radar Discord bot (WIP) 2026-09-17 07:51:54 +05:30