openclaw/extensions/telegram
Chinar Amrutkar 3f67581e50
fix: retry safe wrapped Telegram send failures (#51895) (thanks @chinar-amrutkar)
* fix(telegram): traverse error .cause chain in formatErrorMessage and match grammY HttpError

grammY wraps network failures in HttpError with message
'Network request for ... failed!' and the original error in .cause.
formatErrorMessage only checked err.message, so shouldRetry never
fired for the most common transient failure class.

Changes:
- formatErrorMessage now traverses .cause chain, appending nested
  error messages (with cycle protection)
- Added 'Network request' to TELEGRAM_RETRY_RE as belt-and-suspenders
- Added tests for .cause traversal, circular references, and grammY
  HttpError retry behavior

Fixes #51525

* style: fix oxfmt formatting in retry-policy.ts

* fix: add braces to satisfy oxlint requirement

* fix(telegram): keep send retries strict

* test(telegram): cover wrapped retry paths

* fix(telegram): retry rate-limited sends safely

* fix: retry safe wrapped Telegram send failures (#51895) (thanks @chinar-amrutkar)

* fix: preserve wrapped Telegram rate-limit retries (#51895) (thanks @chinar-amrutkar)

---------

Co-authored-by: chinar-amrutkar <chinar-amrutkar@users.noreply.github.com>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-01 15:54:29 +05:30
..
src fix: retry safe wrapped Telegram send failures (#51895) (thanks @chinar-amrutkar) 2026-04-01 15:54:29 +05:30
allow-from.ts
api.ts refactor: route more test seams through public plugin APIs 2026-03-27 13:46:17 +00:00
channel-config-api.ts refactor: move channel config metadata into plugin-owned manifests 2026-03-27 01:59:30 +00:00
index.ts
openclaw.plugin.json
package.json build: bump version to 2026.4.1 2026-03-31 22:53:17 +01:00
runtime-api.ts refactor: move provider seams behind plugin sdk surfaces 2026-03-27 23:26:26 +00:00
session-key-api.ts Fix: move bootstrap session grammar into plugin-owned session-key surfaces (#58400) 2026-03-31 19:41:01 -04:00
setup-entry.ts
test-api.ts Extensions: stabilize telegram registry contracts 2026-03-29 21:42:58 -04:00
test-support.ts fix(test): satisfy telegram pairing seam 2026-03-30 20:05:29 +09:00
update-offset-runtime-api.ts refactor: remove remaining core extension reach-ins 2026-03-27 13:46:16 +00:00