openclaw/scripts
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
..
dev Gateway/Plugins: device pairing + phone control plugins (#11755) 2026-02-08 18:07:13 +01:00
docker chore: apply local workspace updates (#9911) 2026-02-05 16:54:44 -05:00
docs-i18n Docs i18n: make translation prompt language-pluggable 2026-02-08 10:18:04 -08:00
e2e fix: include plugin sdk dts tsconfig in onboard docker image 2026-02-13 02:37:28 +01:00
pre-commit chore: stabilize prek hooks runner selection (#1720) (thanks @dguido) 2026-01-25 10:55:28 +00:00
repro fix: run cli scripts via node build runner 2026-01-18 18:43:39 +00:00
shell-helpers Update clawdock-helpers.sh compatibility with Zsh 2026-02-13 13:47:16 -06:00
systemd refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
auth-monitor.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
bench-model.ts chore: apply local workspace updates (#9911) 2026-02-05 16:54:44 -05:00
build-and-run-mac.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
build-docs-list.mjs chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
build_icon.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
bundle-a2ui.sh Docker: include A2UI sources for bundle (#13114) 2026-02-09 22:44:59 -06:00
canvas-a2ui-copy.ts chore: Also format `scripts` and `skills`. 2026-01-31 21:21:25 +09:00
changelog-to-html.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
check-ts-max-loc.ts chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts. 2026-02-01 10:03:47 +09:00
claude-auth-status.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
clawlog.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
clawtributors-map.json 🤖 Feishu: expand channel support 2026-02-05 12:29:04 -08:00
codesign-mac-app.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
committer chore: block node_modules commits 2026-01-18 22:28:59 +00:00
copy-hook-metadata.ts fix: all bundled hooks broken since 2026.2.2 (tsdown migration) (#9295) 2026-02-09 11:35:47 +09:00
create-dmg.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
debug-claude-usage.ts chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts. 2026-02-01 10:03:47 +09:00
docs-link-audit.mjs fix: docs broken links and improve link checker (#13056) 2026-02-09 18:45:06 -08:00
docs-list.js chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
firecrawl-compare.ts chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
ios-team-id.sh chore(ios): add team id helper 2025-12-26 18:16:13 +01:00
label-open-issues.ts Scripts: add issue labeler state + PR support 2026-02-12 15:28:12 -06:00
make_appcast.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
mobile-reauth.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
notarize-mac-artifact.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
package-mac-app.sh fix: Fix Mac app build step. 2026-02-03 22:14:11 +09:00
package-mac-dist.sh chore: add mac dSYM zip to release artifacts 2026-02-03 17:15:02 -08:00
pr chore: fix root_dir resolution/stale scripts during PR review 2026-02-13 15:09:39 -05:00
pr-merge chore: fix root_dir resolution/stale scripts during PR review 2026-02-13 15:09:39 -05:00
pr-prepare chore: fix root_dir resolution/stale scripts during PR review 2026-02-13 15:09:39 -05:00
pr-review chore: fix root_dir resolution/stale scripts during PR review 2026-02-13 15:09:39 -05:00
protocol-gen-swift.ts fix(whatsapp): allow media-only sends and normalize leading blank payloads (#14408) 2026-02-11 23:21:21 -06:00
protocol-gen.ts refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
readability-basic-compare.ts chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
recover-orphaned-processes.sh fix: reset stale execution state after SIGUSR1 in-process restart (#15195) 2026-02-13 15:30:09 -05:00
release-check.ts fix(docker): support .mjs entrypoints in images and e2e 2026-02-07 00:22:34 -08:00
restart-mac.sh Switch from TypeScript to TypeScript Go. Use `pnpm tsgo` for Typechecks. 2026-01-31 15:33:15 +09:00
run-node.mjs perf(cli): reduce read-only startup overhead 2026-02-14 01:18:44 +00:00
sandbox-browser-entrypoint.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
sandbox-browser-setup.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
sandbox-common-setup.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
sandbox-setup.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
setup-auth-system.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
sqlite-vec-smoke.mjs chore: Also format `scripts` and `skills`. 2026-01-31 21:21:25 +09:00
sync-labels.ts CI: add PR size autolabel workflow (#14410) 2026-02-11 21:12:27 -06:00
sync-moonshot-docs.ts Docs: fix Moonshot sync markers (#6789) 2026-02-02 03:38:14 +01:00
sync-plugin-versions.ts chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
termux-auth-widget.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
termux-quick-auth.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
termux-sync-widget.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-cleanup-docker.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-force.ts chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts. 2026-02-01 10:03:47 +09:00
test-install-sh-docker.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-install-sh-e2e-docker.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-live-gateway-models-docker.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-live-models-docker.sh refactor: rename to openclaw 2026-01-30 03:16:21 +01:00
test-parallel.mjs perf(test): parallelize unit-isolated 2026-02-14 13:01:02 +00:00
test-shell-completion.ts scripts: update test-shell-completion to use shared helpers 2026-02-04 19:51:06 +00:00
ui.js chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
update-clawtributors.ts chore: Enable `typescript/no-explicit-any` rule. 2026-02-02 16:18:09 +09:00
update-clawtributors.types.ts feat: add prek pre-commit hooks and dependabot (#1720) 2026-01-25 10:53:23 +00:00
vitest-slowest.mjs perf(test): add vitest slowest report artifact 2026-02-12 17:16:42 +00:00
watch-node.mjs fix(config): add forensic config write audit and watch attribution 2026-02-14 01:36:15 +00:00
write-build-info.ts chore: Enable linting in `scripts`. 2026-01-31 21:29:14 +09:00
write-cli-compat.ts fix(update): repair daemon-cli compat exports after self-update 2026-02-13 04:08:13 +01:00
write-plugin-sdk-entry-dts.ts fix(slack): download all files in multi-image messages (#15447) 2026-02-14 14:16:02 +01:00
zai-fallback-repro.ts chore: apply local workspace updates (#9911) 2026-02-05 16:54:44 -05:00