Commit Graph

48189 Commits

Author SHA1 Message Date
Moeed Ahmed
243618e804 fix: handle telegram select callbacks safely 2026-05-10 08:59:39 +05:30
Peter Steinberger
f1d935d39f test: tighten capability generation assertions 2026-05-10 04:27:26 +01:00
Peter Steinberger
85c023bce3 test: tighten capability gateway assertions 2026-05-10 04:25:31 +01:00
Peter Steinberger
dec13eb5d8 test: tighten capability model assertions 2026-05-10 04:23:33 +01:00
Peter Steinberger
1bb583c41e test: clear dispatch broad matchers 2026-05-10 04:21:01 +01:00
Peter Steinberger
fc5fe8dd51 test: tighten dispatch plugin binding assertions 2026-05-10 04:18:54 +01:00
Ayaan Zaidi
6bf9185d27 fix(telegram): gate media dedup on visible delivery 2026-05-10 08:47:04 +05:30
Roger Deng
22e564da4b fix(telegram): track block media only after successful delivery
Move sentBlockMediaUrls recording from before sends to after successful
delivery completion. If a block send throws, the URL is not recorded,
so final fallback delivery retains the media attachment instead of
incorrectly deduplicating it.

Add regression tests for both success-path dedup and failure-path
media preservation.

Addresses ClawSweeper P2: block-failure → final-media-loss.
2026-05-10 08:47:04 +05:30
Roger Deng
bc3fd5bf0f fix(telegram): clear legacy mediaUrl when all mediaUrls deduped 2026-05-10 08:47:04 +05:30
Roger Deng
b5af229172 fix(telegram): use generic type in deduplicateBlockSentMedia
Preserve the full ReplyPayload type through deduplication so that
channelData and other properties are not lost.
2026-05-10 08:47:04 +05:30
Roger Deng
8ff38c0988 fix(telegram): deduplicate MEDIA attachments in non-streaming mode
Non-streaming Telegram delivers each MEDIA: attachment twice — once
from the media-only block reply and once from the final reply. Track
media URLs sent via block replies and filter duplicates from final
replies.

Closes #78372
2026-05-10 08:47:04 +05:30
Peter Steinberger
4e09538f44 test: tighten dispatch hook metadata assertions 2026-05-10 04:16:04 +01:00
Hua Yang
dff4a04c1f feat(signal): support container REST API
Adds container REST/WebSocket support for bbernhard/signal-cli-rest-api Signal deployments.

Closes #10240.

Thanks @Hua688.

Verification:
- pnpm exec oxfmt --check --threads=1 docs/channels/signal.md
- pnpm lint:extensions
- pnpm test extensions/signal
- pnpm tsgo:extensions && pnpm tsgo:test:extensions
- pnpm config:docs:check
- git diff --check
- CI checks on PR head 1d0a536ecd
- Crabbox/Testbox live Docker smoke tbx_01kr7h07shhcafxjc0ezfh946w / run 25614453516
2026-05-09 23:13:55 -04:00
Peter Steinberger
7af50ce47b test: tighten dispatch acp binding assertions 2026-05-10 04:13:30 +01:00
Peter Steinberger
fe645767d7 test: tighten dispatch acp lifecycle assertions 2026-05-10 04:12:09 +01:00
Peter Steinberger
b395285afb test: tighten dispatch tool progress assertions 2026-05-10 04:10:43 +01:00
Val Alexander
8ead938c7c Fix chat-channel node exec approval replays
Fixes #77656.

Summary:
- Carry chat turn-source metadata through approved async host=node replays.
- Bind trusted backend replay to node, command, session, agent, and chat target metadata instead of transient WebSocket connection ids.
- Cover Telegram and WeCom-style reconnect replay plus denial cases with gateway, websocket, and agent tests.
- Carry the current-main CLI help assertion fix needed to clear exact-head CI after the rebase.

Verification:
- pnpm test src/gateway/node-invoke-system-run-approval.test.ts src/gateway/server.node-invoke-approval-bypass.test.ts src/agents/bash-tools.exec-host-node.test.ts -- --reporter=verbose
- pnpm test src/cli/channel-auth.test.ts src/cli/plugins-cli.policy.test.ts src/cli/command-registration-policy.test.ts -- --reporter=verbose
- pnpm check:changed
- GitHub CI passed on d1392a873c
- ClawSweeper re-review completed on the approval replay head
2026-05-09 22:10:21 -05:00
Peter Steinberger
392ce6d8d8 test: tighten dispatch cross channel assertions 2026-05-10 04:09:08 +01:00
Jordan Baker
86c1622a3a fix(acp): propagate AcpRuntimeError detail through lifecycle boundary
Summary:
- Preserve AcpRuntimeError detail across the ACP lifecycle boundary.
- Redact non-Error lifecycle failure strings and add gateway/agent propagation coverage.
- Align rebased CLI command-hint formatting with current main.

Verification:
- pnpm check:test-types
- pnpm test src/acp/runtime/errors.test.ts src/agents/command/attempt-execution.error-propagation.test.ts src/gateway/server.agent.gateway-server-agent-b.test.ts
- CI exact head c96d63298b green

Co-authored-by: Jordan Baker <23538+hexsprite@users.noreply.github.com>
2026-05-09 23:08:30 -04:00
Peter Steinberger
f9f9633bc5 test: tighten dispatch route assertions 2026-05-10 04:07:43 +01:00
Peter Steinberger
d88f7ab637 test: tighten migrate json apply assertions 2026-05-10 04:05:30 +01:00
Peter Steinberger
4b6cb9e9bc fix(cli): keep plugin help registration reachable 2026-05-10 04:03:45 +01:00
Peter Steinberger
aafadd45a5 test: tighten migrate skip selection assertions 2026-05-10 04:03:32 +01:00
Peter Steinberger
67634a1e5a test: tighten migrate conflict selection assertions 2026-05-10 04:02:06 +01:00
Peter Steinberger
bbddd801c4 test: tighten migrate plugin selection assertions 2026-05-10 04:00:56 +01:00
Peter Steinberger
e2bbbf8879 test: tighten migrate skill selection assertions 2026-05-10 03:59:29 +01:00
Ayaan Zaidi
5eaed7d8dd docs(changelog): mention telegram partial previews (#80045) (thanks @TurboTheTurtle) 2026-05-10 08:29:19 +05:30
Ayaan Zaidi
1367ec7461 fix(telegram): use partial stream deltas 2026-05-10 08:29:19 +05:30
Andy Ye
512a26c29b fix telegram partial progress coalescing 2026-05-10 08:29:19 +05:30
Andy Ye
0a4ef37f65 fix telegram partial draft fragments 2026-05-10 08:29:19 +05:30
Peter Steinberger
487687a6f0 build(discord): skip native opus builds by default (#80071) 2026-05-09 22:59:09 -04:00
Andrew Cunliffe
048ca8c765 fix(telegram): suppress 'no extra answer' placeholder when reply is in flight (#78929) 2026-05-10 08:28:31 +05:30
Peter Steinberger
fa2ffa6fbe test: tighten outbound hook error assertions 2026-05-10 03:57:19 +01:00
Peter Steinberger
9cf0651e46 test: tighten outbound queue persistence assertions 2026-05-10 03:54:12 +01:00
Peter Steinberger
c0b94fd075 ci(release): pass OpenAI install e2e env 2026-05-10 03:53:04 +01:00
Peter Steinberger
b3f4fb8f8f test: tighten outbound chunk config assertions 2026-05-10 03:52:24 +01:00
Peter Steinberger
e8b3ff7891 test: tighten outbound media delivery assertions 2026-05-10 03:51:10 +01:00
Peter Steinberger
d644798d67 test: tighten outbound runtime payload assertions 2026-05-10 03:48:46 +01:00
Peter Steinberger
467b0f87ff test: tighten outbound media policy assertions 2026-05-10 03:47:09 +01:00
Peter Steinberger
972b3c673a test: tighten outbound diagnostic assertions 2026-05-10 03:45:05 +01:00
Peter Steinberger
7d38acbbbf test: tighten outbound adapter assertions 2026-05-10 03:43:25 +01:00
Peter Steinberger
c7c7e2b94e fix(cli): restore terminal guidance typecheck 2026-05-09 22:41:25 -04:00
Linux2010
d6881962a3 fix(media): allow buffer-verified ZIP archives in host-read validator
Host-local media sends were rejecting ZIP attachments with the error
'Host-local media sends only allow buffer-verified images, audio, video,
PDF, and Office documents (got application/zip)'.

This adds application/zip to the HOST_READ_ALLOWED_DOCUMENT_MIMES set,
enabling agents to send ZIP files via the message tool. ZIP files are
validated by file-type magic bytes detection, ensuring they are genuine
archives rather than disguised executables.

Fixes #78057 (regression from v2026.4.23 to v2026.5.2).
2026-05-09 22:41:25 -04:00
Peter Steinberger
72e17c17ae test: tighten qa matrix gateway cli assertions 2026-05-10 03:40:42 +01:00
Peter Steinberger
337148a821 test: tighten qa matrix recovery cli assertions 2026-05-10 03:37:55 +01:00
Peter Steinberger
cb60a06c9e test: tighten qa matrix encryption cli assertions 2026-05-10 03:36:11 +01:00
Peter Steinberger
9b8a6040a5 test: tighten qa matrix account add assertions 2026-05-10 03:34:14 +01:00
Peter Steinberger
968732019a test: tighten qa matrix cli assertions 2026-05-10 03:33:02 +01:00
Peter Steinberger
526da2d919 test: tighten qa matrix e2ee trust assertions 2026-05-10 03:31:01 +01:00
Peter Steinberger
d9cb393f4e test: tighten qa matrix e2ee assertions 2026-05-10 03:29:29 +01:00