Commit Graph

2096 Commits

Author SHA1 Message Date
Peter Steinberger 91266fa928 fix(telegram): bound isolated long-poll timeout 2026-05-18 01:05:27 +01:00
Peter Steinberger 9a936b3063 test: fix CI regressions 2026-05-18 00:37:48 +01:00
Peter Steinberger 691d62630f test: keep slow tests under duration cap 2026-05-18 00:26:44 +01:00
VACInc aa71f7fe15 Fix Telegram stop debounce bypass (#83248)
Summary:
- The PR adds a generic inbound debounce `cancelKey`, uses Telegram stop-like controls to cancel same-chat pen ... buffers and bypass debounce, and adds focused Telegram regression coverage plus updated channel test mocks.
- Reproducibility: yes. by source inspection: current main enqueues Telegram text through inbound debounce bef ... nly has flush semantics for pending keyed work. I did not run a live Telegram repro in this read-only pass.

Automerge notes:
- PR branch already contained follow-up commit before automerge: Fix Telegram stop debounce bypass

Validation:
- ClawSweeper review passed for head 19245a341d.
- Required merge gates passed before the squash merge.

Prepared head SHA: 19245a341d
Review: https://github.com/openclaw/openclaw/pull/83248#issuecomment-4472300906

Co-authored-by: VACInc <3279061+VACInc@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
2026-05-17 21:10:53 +00:00
clawsweeper[bot] bacc18a575 Log Telegram outbound delivery success (#83247)
Summary:
- The PR adds info-level Telegram outbound send success logs for text/media sends, tracks accepted threadless  ... s, and loads the OpenAI Codex external auth overlay for Codex plugin-harness runs with regression coverage.
- Reproducibility: yes. there is a source-level reproduction path: the branch adds focused tests for Telegram  ... mission/privacy and Codex auth overlay selection. I did not execute those tests in this read-only checkout.

Automerge notes:
- PR branch already contained follow-up commit before automerge: Use Codex auth overlay for scoped Codex runs
- PR branch already contained follow-up commit before automerge: Add regression tests for Codex auth and Telegram send logs
- PR branch already contained follow-up commit before automerge: Log Telegram outbound delivery success

Validation:
- ClawSweeper review passed for head b860487aef.
- Required merge gates passed before the squash merge.

Prepared head SHA: b860487aef
Review: https://github.com/openclaw/openclaw/pull/83247#issuecomment-4472287527

Co-authored-by: jrwrest <jrwrest@users.noreply.github.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
2026-05-17 19:46:31 +00:00
Peter Steinberger 9d85f05b01 fix: keep chunkable presentation text intact 2026-05-17 14:18:23 +01:00
Peter Steinberger 5dbc969b46 fix: preserve Telegram interactive precedence 2026-05-17 14:18:23 +01:00
Peter Steinberger b78c2ee8c8 refactor: adopt presentation rendering in Mattermost 2026-05-17 14:18:23 +01:00
Peter Steinberger fee1cd9867 docs: document presentation API surface 2026-05-17 14:18:23 +01:00
Peter Steinberger ee72ce8cf7 refactor: deprecate legacy interactive reply APIs 2026-05-17 14:18:23 +01:00
Peter Steinberger ad861d4c9d feat: add presentation capability limits 2026-05-17 14:18:23 +01:00
Ayaan Zaidi be934c0347 fix(telegram): warn on all failed media groups 2026-05-17 16:23:06 +05:30
eldar702 066ca3926a fix(telegram): enable the media-group skip-warning guard [AI-assisted]
The warning branch added in the previous commit was committed with an
always-false guard (`if (false && skippedCount > 0 && ...)`), so the
notification never fired — flagged by review as [P1]. Remove the
`false &&` so partial-album media loss actually notifies the user, as
the accompanying tests already expect.

Refs #55216
2026-05-17 16:23:06 +05:30
eldar702 9a45c0701b fix(telegram): warn when a media group silently drops failed photos [AI-assisted]
Telegram albums where some photos failed to download were processed
silently: the agent received only the photos that resolved, and the
user was never told images had been lost.

processMediaGroup now tracks a skippedCount (incremented on a
recoverable per-photo fetch error and on a null resolveMedia result).
When at least one photo still resolved, it emits a single anchored
warning per album (never per photo) using the same
withTelegramApiErrorLogging wrapper + swallowed-send pattern as the
existing single-attachment "Failed to download media" notice. The
all-failed-album case is intentionally left silent (out of scope).

Fixes #55216
2026-05-17 16:23:06 +05:30
Peter Steinberger 0e76dafe42 test: avoid telegram startup abort deadlock 2026-05-17 11:42:37 +01:00
Peter Steinberger 5d1f7bf058 fix: route image URL describes through MiniMax VLM
Summary:
- Preserve HTTP image describe inputs as remote media.
- Route MiniMax CN image understanding through MiniMax-VL-01.
- Cover CLI, media runtime, tools, Telegram stickers, docs, and changelog.

Verification:
- codex-review clean
- pnpm check:changed via Blacksmith Testbox tbx_01krtdekwak0mygxbw5z7cfb6z
- PR CI green on 516281448e
2026-05-17 08:45:50 +01:00
Peter Steinberger 77547226ce fix: improve progress draft truncation 2026-05-17 08:13:39 +01:00
Josh Avant 9a063e38d1 Fix TTS supplement delivery across live previews (#82935)
* fix: avoid duplicated tts supplement replies

* chore: add changelog for tts supplement fix
2026-05-17 01:15:12 -05:00
Peter Steinberger 16ef041b5d fix(channels): preserve implicit default accounts 2026-05-17 06:42:28 +01:00
Jesse Merhi 7c2425a518 Support HTTPS managed proxy CA trust (#79171)
* fix: support HTTPS managed proxy CA trust

* fix: strip IP SNI for HTTPS proxy dispatchers

* fix: harden managed proxy undici dispatchers

* docs: refresh proxy baselines

* fix: drop stale whatsapp undici dependency

* fix: satisfy proxy dispatcher lint and tests

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-17 06:23:30 +01:00
Peter Steinberger 6a8a6551fc test(discord): cover durable chunk retry delivery (#82898)
* test(discord): cover durable chunk retry delivery

* test(discord): use plugin sdk test runtime

* fix(telegram): satisfy message cache strict checks

* test(discord): include durable delivery in changed lane
2026-05-17 06:11:58 +01:00
Josh Avant 422a1374e0 Fix silent success for non-deliverable Bedrock Telegram turns (#82905)
* fix: handle non-deliverable terminal turns

* chore: add changelog for non-deliverable turns

* fix: align telegram message cache types
2026-05-16 23:57:52 -05:00
Ayaan Zaidi 741eafea5f fix(telegram): distinguish partial reply snapshots 2026-05-17 10:04:02 +05:30
Ayaan Zaidi 8880a5827a test(telegram): prove bot reply-chain context 2026-05-17 10:04:02 +05:30
Ayaan Zaidi 440e7d2a87 fix(telegram): preserve reply-chain context 2026-05-17 10:04:02 +05:30
Peter Steinberger 549a0ea313 fix(discord): recover truncated progress finals
Summary:
- Add shared SDK helpers for transcript-backed recovery of ellipsis-truncated final text.
- Use the helper in Discord progress preview delivery so long answers fall through to normal chunked delivery with the full transcript text.
- Refactor Telegram to reuse the shared helper.

Verification:
- node scripts/run-vitest.mjs src/plugin-sdk/channel-streaming.test.ts extensions/discord/src/monitor/message-handler.process.test.ts
- pnpm exec oxfmt --check --threads=1 src/plugin-sdk/channel-streaming.ts src/plugin-sdk/channel-streaming.test.ts extensions/telegram/src/lane-delivery-text-deliverer.ts extensions/telegram/src/lane-delivery.ts extensions/telegram/src/bot-message-dispatch.ts extensions/discord/src/monitor/message-handler.process.ts extensions/discord/src/monitor/message-handler.process.test.ts
- node scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.extensions.test.json --incremental --tsBuildInfoFile .artifacts/tsgo-cache/extensions-test.tsbuildinfo
- git diff --check
- pnpm check:changed via Blacksmith Testbox tbx_01krsy80a5qgfw790nm45770xt
- GitHub PR checks green on #82862
- codex-review --mode local: clean, no accepted/actionable findings

Fixes #82807.
2026-05-17 04:26:35 +01:00
Gio Della-Libera c4f20b656e fix(telegram): preserve implicit default account (#82794)
Keep the top-level Telegram default account in the account list when named accounts or bindings are added alongside top-level credentials. This preserves default polling while still allowing named-only configs to resolve to their single configured account.
2026-05-16 19:30:52 -07:00
Josh Avant e50927b6c9 fix(telegram): keep streamed text when tts arrives (#82820)
* fix(telegram): keep streamed text when tts arrives

* docs(changelog): note telegram tts stream fix
2026-05-16 20:20:05 -05:00
Peter Steinberger a70459d10b fix: keep telegram floor replays dispatchable 2026-05-17 01:34:54 +01:00
Peter Steinberger b09e11bc69 fix: harden telegram routing edge cases 2026-05-17 01:34:54 +01:00
Miya 5239b20089 fix telegram polling and message action scopes 2026-05-17 01:34:54 +01:00
JARVIS-Glasses 2c4287b6df fix(telegram): honor catch-all mentions for captionless media 2026-05-17 01:13:24 +01:00
Peter Steinberger 07f05e972e refactor: move inbound event classification into core 2026-05-17 00:10:29 +01:00
Gio Della-Libera 4003a955ee fix(telegram): normalize announce group targets (#81229) 2026-05-16 10:32:58 -07:00
Vincent Koc 9a204008ba test(extensions): stabilize plugin prerelease shards 2026-05-17 01:00:43 +08:00
Peter Steinberger a3e7fc7de7 test(telegram): fix cache invalidation test contexts 2026-05-16 17:56:01 +01:00
Peter Steinberger b11f67964c test(telegram): cover bot info cache invalidation 2026-05-16 17:56:01 +01:00
Peter Steinberger 95741daeb4 fix(telegram): cache startup bot info 2026-05-16 17:56:01 +01:00
Vincent Koc 6ed16d9356 test(extensions): harden plugin prerelease shards 2026-05-17 00:40:42 +08:00
Ayaan Zaidi 0fb0b5197e test(telegram): cover truncated progress finals 2026-05-16 18:50:10 +05:30
Ayaan Zaidi 20c3580394 fix(telegram): deliver transcript-backed final replies 2026-05-16 18:50:10 +05:30
Ayaan Zaidi 89a3b9a07e fix(telegram): avoid stealing live spool claims 2026-05-16 14:04:47 +05:30
Ayaan Zaidi 784ee94108 test(telegram): align spooled claim expectations 2026-05-16 14:04:47 +05:30
Ayaan Zaidi 494517a990 refactor(telegram): simplify spool claim recovery 2026-05-16 14:04:47 +05:30
VACInc 59d2f88e41 fix(telegram): recover restart spool claims 2026-05-16 14:04:47 +05:30
Josh Avant 916234977a fix(telegram): drop expired approval callbacks (#82455)
* fix(telegram): drop expired approval callbacks

* changelog: credit expired Telegram callback fix
2026-05-16 01:43:17 -05:00
Josh Avant 51f4a5e8a0 Fix Telegram presentation-only payload sends (#82449)
* fix telegram presentation payload fallback

* changelog telegram presentation payload fallback

* fix telegram presentation reply delivery
2026-05-16 00:16:51 -05:00
Peter Steinberger 0d21524736 test(telegram): type targeted stop metadata stubs 2026-05-16 03:25:21 +01:00
Peter Steinberger 84c9286434 fix(telegram): keep foreign stop commands on topic lanes 2026-05-16 03:25:21 +01:00
VACInc b72f008183 fix: stop active turns reliably 2026-05-16 03:25:21 +01:00