openclaw/extensions
Tanwa Arpornthip c76288bdf1
fix(slack): download all files in multi-image messages (#15447)
* fix(slack): download all files in multi-image messages

resolveSlackMedia() previously returned after downloading the first
file, causing multi-image Slack messages to lose all but the first
attachment. This changes the function to collect all successfully
downloaded files into an array, matching the pattern already used by
Telegram, Line, Discord, and iMessage adapters.

The prepare handler now populates MediaPaths, MediaUrls, and
MediaTypes arrays so downstream media processing (vision, sandbox
staging, media notes) works correctly with multiple attachments.

Fixes #11892, #7536

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(slack): preserve MediaTypes index alignment with MediaPaths/MediaUrls

The filter(Boolean) on MediaTypes removed entries with undefined contentType,
shrinking the array and breaking index correlation with MediaPaths and MediaUrls.
Downstream code (media-note.ts, attachments.ts) requires these arrays to have
equal lengths for correct per-attachment MIME type lookup. Replace filter(Boolean)
with a nullish coalescing fallback to "application/octet-stream".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(slack): align MediaType fallback and tests (#15447) (thanks @CommanderCrowCode)

* fix: unblock plugin-sdk account-id typing (#15447)

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-02-14 14:16:02 +01:00
..
bluebubbles perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
copilot-proxy fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
device-pair TypeScript: add extensions to tsconfig and fix type errors (#12781) 2026-02-09 10:05:38 -08:00
diagnostics-otel fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
discord fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
feishu fix(slack): download all files in multi-image messages (#15447) 2026-02-14 14:16:02 +01:00
google-antigravity-auth fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
google-gemini-cli-auth test: migrate suites to e2e coverage layout 2026-02-13 14:28:22 +00:00
googlechat perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
imessage fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
irc perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
line fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
llm-task fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
lobster fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
matrix perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
mattermost perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
memory-core fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
memory-lancedb fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
minimax-portal-auth fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
msteams fix(security): enforce bounded webhook body handling 2026-02-13 19:14:54 +01:00
nextcloud-talk perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
nostr fix(security): enforce bounded webhook body handling 2026-02-13 19:14:54 +01:00
open-prose fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
phone-control TypeScript: add extensions to tsconfig and fix type errors (#12781) 2026-02-09 10:05:38 -08:00
qwen-portal-auth TypeScript: add extensions to tsconfig and fix type errors (#12781) 2026-02-09 10:05:38 -08:00
signal fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
slack refactor(reply): clarify explicit reply tags in off mode (#16189) 2026-02-14 14:15:37 +01:00
talk-voice Gateway/Plugins: device pairing + phone control plugins (#11755) 2026-02-08 18:07:13 +01:00
telegram fix: align extension plugin and docs with new replyToMode default 2026-02-13 23:31:17 -08:00
thread-ownership feat(slack): land thread-ownership from @DarlingtonDeveloper (#15775) 2026-02-13 23:37:05 +00:00
tlon fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
twitch test: migrate suites to e2e coverage layout 2026-02-13 14:28:22 +00:00
voice-call refactor(voice-call): split manager into facade and context slices 2026-02-14 03:39:33 +01:00
whatsapp fix(ci): sync extension versions to root release (#15199) 2026-02-13 05:54:03 +01:00
zalo perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00
zalouser perf(test): avoid plugin-sdk barrel imports 2026-02-14 12:42:19 +00:00