2.3 KiB
2.3 KiB
v0.6.4 (2026-04-27)
Fixes Telegram chat actions: the indicator the user picks in the UI is now actually sent, and the phantom "typing…" bubble that lingered for ~5s after a notification arrived is gone.
User-facing changes
Bug Fixes
- Telegram chat action UI choice now respected:
chat_actionwas stored in two places — the model column and the config JSON — and dispatch unconditionally overrode the config value with the column. The frontend only ever wrote the JSON path, so picking "upload_photo" / "record_voice" / etc. in the UI silently had no effect on outgoing chat actions. The column is now the single source of truth: the frontend sendschat_actiontop-level, dispatch reads from the column, and a one-time migration backfills existing config values into the column and strips the legacy key (72dd611) - Phantom Telegram chat-action indicator: a long-standing race in the keepalive loop (bare
sleep(4)+finally cancel) could fire one lastsendChatActionafter the response had already arrived, leaving a "typing…" / "uploading…" bubble in the chat for ~5 seconds. Replaced with a stop event +wait_forso callers signal stop cleanly via the newstop_keepalivehelper (72dd611)
Development / Internal
Database
- Migration: new one-shot migration moves
chat_actionfromnotification_target.configJSON into the dedicated column on existing rows, then deletes the legacy key from config. No action required — runs automatically on backend start (72dd611)
All Commits
| Hash | Message | Author |
|---|---|---|
| 72dd611 | fix(telegram): respect chat_action UI choice, drop phantom indicator | alexei.dolgolyov |