fix(telegram): cool down transient sendChatAction failures#93020
Conversation
Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]>
Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]>
|
Codex review: needs maintainer review before merge. Reviewed June 14, 2026, 12:30 PM ET / 16:30 UTC. Summary PR surface: Source +61, Tests +97. Total +158 across 3 files. Reproducibility: yes. at source level: current main rethrows transient/non-401 sendChatAction failures without a cooldown, while the linked issue provides repeated-failure logs. I did not run a live Telegram outage reproduction in this read-only review. Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land the focused Telegram handler cooldown with its regression coverage after maintainer review and any required live transport proof. Do we have a high-confidence way to reproduce the issue? Yes at source level: current main rethrows transient/non-401 sendChatAction failures without a cooldown, while the linked issue provides repeated-failure logs. I did not run a live Telegram outage reproduction in this read-only review. Is this the best way to solve the issue? Yes: a narrow Telegram-owned cooldown inside the per-account sendChatAction handler is the best layer because it avoids broad core typing-loop changes and preserves the existing 401 suspension behavior. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against aefd49909d41. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +61, Tests +97. Total +158 across 3 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
…93020) * fix(telegram): cool down transient sendChatAction failures Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> * fix(clownfish): address review for ghcrawl-156876-autonomous-smoke (1) Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> --------- Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com> Co-authored-by: pick-cat <[email protected]>
…93020) * fix(telegram): cool down transient sendChatAction failures Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> * fix(clownfish): address review for ghcrawl-156876-autonomous-smoke (1) Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> --------- Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com> Co-authored-by: pick-cat <[email protected]>
Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits.
Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits.
* fix: cool down transient Telegram typing failures Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits. * fix: support bare Telegram adapters in typing cooldown * test: update typing backoff imports for relocated Telegram adapter The Telegram adapter moved from gateway/platforms/telegram.py to plugins/platforms/telegram/adapter.py since this branch was created; point the test imports and monkeypatch targets at the new module.
…93020) * fix(telegram): cool down transient sendChatAction failures Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> * fix(clownfish): address review for ghcrawl-156876-autonomous-smoke (1) Co-authored-by: Langning Zhang <[email protected]> Co-authored-by: Sumaia Zaman <[email protected]> Co-authored-by: pick-cat <[email protected]> --------- Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com> Co-authored-by: pick-cat <[email protected]>
* fix: cool down transient Telegram typing failures Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits. * fix: support bare Telegram adapters in typing cooldown * test: update typing backoff imports for relocated Telegram adapter The Telegram adapter moved from gateway/platforms/telegram.py to plugins/platforms/telegram/adapter.py since this branch was created; point the test imports and monkeypatch targets at the new module.
* fix: cool down transient Telegram typing failures Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits. * fix: support bare Telegram adapters in typing cooldown * test: update typing backoff imports for relocated Telegram adapter The Telegram adapter moved from gateway/platforms/telegram.py to plugins/platforms/telegram/adapter.py since this branch was created; point the test imports and monkeypatch targets at the new module.
* fix: cool down transient Telegram typing failures Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits. * fix: support bare Telegram adapters in typing cooldown * test: update typing backoff imports for relocated Telegram adapter The Telegram adapter moved from gateway/platforms/telegram.py to plugins/platforms/telegram/adapter.py since this branch was created; point the test imports and monkeypatch targets at the new module.
* fix: cool down transient Telegram typing failures Port from openclaw/openclaw#93020: add per-chat cooldown for transient sendChatAction failures so keep-typing refreshes do not hammer Telegram during network blips or rate limits. * fix: support bare Telegram adapters in typing cooldown * test: update typing backoff imports for relocated Telegram adapter The Telegram adapter moved from gateway/platforms/telegram.py to plugins/platforms/telegram/adapter.py since this branch was created; point the test imports and monkeypatch targets at the new module.
Summary
Credit
This replacement carries forward work and review context from @Boulea7 in #55886, @sumaiazaman in #55838, and @Pick-cat in #56153.
Validation
Closes #56096. Related #55811 and #48943.
Clownfish 🐠 replacement reef notes:
fish notes: model gpt-5.5, reasoning xhigh; reviewed against 5b4b09f.