Lumen / bot.py

Commit History

Cap Telegram flood-wait sleep so long RetryAfter cannot hold the chat lock
8fdbe53

SilverElixir commited on

Review fixes: full sender names, nick hints, ctx persist, trim order
6e8e909

SilverElixir commited on

Group context: author tags and reply-target answers
8365632

SilverElixir commited on

Chat memory: sender directory and combined 100-message cap
60ad579

SilverElixir commited on

Fix small hardening issues across logging media and errors
3438464

SilverElixir commited on

Exit nonzero when the HTTP server dies first
e2c6512

SilverElixir commited on

Add owner ban commands, dependabot PR cap, seed docs
eb80878

SilverElixir commited on

Quarantine models after 3 bad responses until quota day ends
398ccda

SilverElixir commited on

Add owner-only /selftest route-head probe with quota accounting
0e3aacf

SilverElixir commited on

Fix review findings on limits and stats
87259c9

SilverElixir commited on

Fix stats activity clock and expand diagnostics
5e12873

SilverElixir commited on

Add per-user daily limits with Gemini fallback
f47e28b

SilverElixir commited on

setWebhook retries with backoff; fail fast with exit(1) on dead setup (D4: A1-7)
c1767cf

SilverElixir commited on

TTS total deadline with shortened notice (D2: A6-4)
4583c1a

SilverElixir commited on

Size caps: 20MB Telegram downloads, album semaphore and total, slideshow post budget, honest too-big reply (D1: A6-1, A4-04, A7-1, A6-2, A6-3)
e7c2546

SilverElixir commited on

Docs and comments match code: env defaults, routing, rich path, stale notes (A12, A2-5..A2-9, A2-14, A3-5, A6-8, A7-10, A8-07, A5-11)
5f62711

SilverElixir commited on

Single-source limit scalars; generation-checked chat lock acquisition (A5-8, A5-10)
a7a4333

SilverElixir commited on

Media lows: safe mime suffix, exact game forms, ext map, WAV check, album skip log, mg cap (A6-5..A6-11, A1-5)
e8e379a

SilverElixir commited on

Harden startup/shutdown: token exit, tick survival, off-loop IO, honest command log (A1-1..A1-4, A1-6, A8-06)
8cc0538

SilverElixir commited on

Drop unused re-export of media bucket cap (pyflakes)
b2a727a

SilverElixir commited on

Validate restored chat state; cap media buckets per chat; stop pruning from dirtying every chat (A5-4, A5-5, A5-6, A5-7, A5-9)
d728999

SilverElixir commited on

Comment cleanup: short Russian why-comments, no AI boilerplate
5f80ef1

SilverElixir commited on

Subagent re-review: fix confirmed misses, harden thin tests
3d3384a

SilverElixir commited on

Independent re-review: fix missed regressions and close gaps
5bd5d41

SilverElixir commited on

Fix regressions found by adversarial review: routing, rendering, rate limits
62c1832

SilverElixir commited on

Docs and tests wave 7: routing description matches reality, stronger assertions instead of or-chains, document the deliberate drop_pending_updates tradeoff
5d33e1a

SilverElixir commited on

Cleanup wave 6: one shared SSE parser and one shared fallback chain, drop dead code and a silent list alias, cover the previously untested failure branches
36e6ab0

SilverElixir commited on

Medium wave 4: validated env numbers, Upstash backend and shutdown flush tests, deno check/lint in CI, reproducible pip step, docs for missing variables
7786593

SilverElixir commited on

Security wave 2: gate deploy on push+own repo, 401 and denial logging on admin endpoints, FastAPI schema off, proxy body cap, ownerless pick confined to chat, loud warning about secrets derived from BOT_TOKEN
1c833d2

SilverElixir commited on

Fix chat-lock hangs: TTS async with timeout, stream handshake capped, route attempts bounded by remaining budget, one shared chat-lock limit
6472592

SilverElixir commited on

Claude-parity fixes: callback filters for pick buttons, inline numbered-list splitter in both render paths, prompt ban on glued lists
d59ebea

SilverElixir commited on

Luna audit fixes: album lock, multilingual routing, streaming budget, quota and persistence hardening
dd4c939

SilverElixir commited on

Media drops are honest: fetchable attachment failure replies error, entry log for media
959974b

SilverElixir commited on

Ideal routing: voice transcribed into scenario routing, OR qwen newcomer in light chain
9bccd1d

SilverElixir commited on

Qwen audit fixes: aio Gemini client, snapshot-before-thread state flush, drop dead Fish check, utcnow fix
3704a0f

SilverElixir commited on

TikTok UX: localized slideshow status (25 langs), audio duration probe, status lives through music fetch
4e6721e

SilverElixir commited on

History summarization: compress overflow into summary instead of silent cut
a348a03

SilverElixir commited on

Menu order: actions draw/tts before settings reset/lang
922729d

SilverElixir commited on

Groq provider: qwen head + gpt-oss reserve on light routes (calibrated 21.09.2026), streaming, quota/stats/diag, 8 tests
9b9fc79

SilverElixir commited on

Comment polish: Russian pro-style comments, keep dated evidence short (+426/-2765). Fix: bot.send_chat_action -> bot.bot.send_chat_action (was AttributeError, typing indicator never showed)
0b65b92

SilverElixir commited on

Fix prod outage: single bot module namespace + skip fil locale in setMyCommands
102c1fa

SilverElixir commited on

Revert guest_message removal (valid Bot API Update field, guest mode) + dependabot grouping
00454c6

SilverElixir commited on

Docs: drop dead dockerignore entry, fix stale test/proxy paths in comments
919354e

SilverElixir commited on

P2: extract lumen_message_core.py (message handling core) with bot.X re-exports (AUD-A-001)
419a40a

SilverElixir commited on

P2: extract lumen_transport_calls.py (sessions, proxy rotation, tg calls) with bot.X re-exports (AUD-A-001)
42c54b2

SilverElixir commited on

P2: extract lumen_rich.py and lumen_media_flow.py with bot.X re-exports (AUD-A-001)
448cad5

SilverElixir commited on

P2: extract lumen_errors.py (model error classification/texts, system prompt) with bot.X re-exports (AUD-A-001)
3d792d6

SilverElixir commited on

P2: extract lumen_commands.py (commands, TTS/draw pipelines, pick buttons) with bot.X re-exports (AUD-A-001)
4ab6cec

SilverElixir commited on

P2: extract lumen_chat_state.py (chat state, quotas, locks, owner utils) with bot.X re-exports (AUD-A-001)
d124960

SilverElixir commited on

P2: extract lumen_routes.py (OpenRouter/Gemini calls, builders, _run_route) with bot.X re-exports (AUD-A-001)
7bdb3eb

SilverElixir commited on