perf(slack): reduce message hot-path overhead#78746
Conversation
|
Codex review: needs maintainer review before merge. Summary Reproducibility: not applicable. this is a performance-focused PR rather than a reported functional bug. The review path is source/diff inspection plus the PR's targeted Slack tests and live Slack QA artifacts. Real behavior proof Next step before merge Security Review detailsBest possible solution: Keep the Slack-owned optimization path, preserve the attached live Slack QA evidence, and merge after the maintainer intentionally exits draft and completes review. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a performance-focused PR rather than a reported functional bug. The review path is source/diff inspection plus the PR's targeted Slack tests and live Slack QA artifacts. Is this the best way to solve the issue? Yes, with the maintainer-review caveat: the changes stay inside the Slack plugin, avoid core or SDK contract changes, and add focused coverage. The safest path is to finish normal maintainer review before merging the draft PR. What I checked:
Likely related people:
Remaining risk / open question:
Codex review notes: model gpt-5.5, reasoning high; reviewed against 6009b86f0de4. |
Mantis Slack Desktop Smoke QASummary: Mantis ran Slack QA inside a Crabbox Linux VNC desktop, started an OpenClaw Slack gateway in that VM, opened Slack Web in the visible browser, and captured screenshot/video evidence.
Slack desktop/VNC browser Slack motion preview Motion-trimmed clips: Full videos: Raw QA files: https://github.com/openclaw/openclaw/tree/qa-artifacts/mantis/slack-desktop-smoke/pr-78746/run-25475954203-1 |
d7a8201 to
5a67b57
Compare


Summary
perf/telegram-slack-rtt-20260503.Source commits:
Verification
tbx_01kr06bg73x3mk2vfrrv3076jr:pnpm test extensions/slack/src/monitor/message-handler/dispatch.streaming.test.ts extensions/slack/src/monitor/message-handler/dispatch.preview-fallback.test.ts extensions/slack/src/monitor/message-handler/prepare.test.ts extensions/slack/src/monitor/message-handler/prepare-thread-context.test.ts extensions/slack/src/monitor/message-handler/prepare.thread-session-key.test.ts extensions/slack/src/monitor/message-handler.test.ts extensions/slack/src/monitor/replies.test.ts extensions/slack/src/monitor/monitor.thread-resolution.test.ts extensions/slack/src/monitor.threading.missing-thread-ts.test.ts extensions/slack/src/threading.test.ts(10 files, 149 tests)tbx_01kr06dbjf7z4ajch55jjn3q47:pnpm check:changed(extensions + extensionTests lanes)tbx_01kr06p31mkhvzpj70s162fcex:pnpm test extensions/slack(91 files, 925 tests)slack-canarypassed againstd7a8201b0510c53d4477efe1104bc0dc92b33f68in https://github.com/openclaw/openclaw/actions/runs/25474033044 (artifact https://github.com/openclaw/openclaw/actions/runs/25474033044/artifacts/6846354538)slack-thread-follow-uppassed againstd7a8201b0510c53d4477efe1104bc0dc92b33f68in https://github.com/openclaw/openclaw/actions/runs/25475954203 (artifact https://github.com/openclaw/openclaw/actions/runs/25475954203/artifacts/6847037521)git diff --check origin/main...HEADpnpm check:changelog-attributionsNote: an intermediate AWS retry for
slack-thread-follow-upwas canceled after Crabbox AWS bootstrap/quota fallback never reached Slack; the same scenario passed on Hetzner and is the counted thread-path proof.