fix: support Slack thread delivery targets - #18911
Closed
EndeavorYen wants to merge 1 commit into
Closed
Conversation
Allow explicit Slack delivery targets to include a thread_ts suffix and pass it through to chat.postMessage. Add regression coverage for send_message and cron target resolution, plus per-test cron lock isolation for silent-delivery tests under xdist.
EndeavorYen
marked this pull request as ready for review
May 2, 2026 17:38
Collaborator
Collaborator
|
Likely duplicate of #16992 |
Contributor
Author
|
Thanks, agreed. #16992 covers the main runtime fix here: parsing Slack thread delivery targets and passing I’ll close this PR to avoid splitting the same fix across two branches. The only extra pieces here are:
Happy to move any of those into #16992 if useful. |
This was referenced May 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
slack:D123ABCDEF:1777740958.516299thread_tsthrough tochat.postMessageWhy
Telegram and Discord delivery targets already support
platform:chat_id:thread_id, but Slack explicit conversation IDs were parsed as channel-only targets. That means a cron or tool delivery target likeslack:D...:thread_tscould be treated as an invalid Slack channel value instead of posting into the intended thread.Validation
/Users/simon/.hermes/hermes-agent/venv/bin/python -m pytest tests/tools/test_send_message_tool.py::TestParseTargetRefSlack tests/tools/test_send_message_tool.py::TestSendToPlatformChunking::test_slack_thread_id_is_passed_to_send tests/cron/test_scheduler.py::TestResolveDeliveryTarget/Users/simon/.hermes/hermes-agent/venv/bin/python -m pytest tests/tools/test_send_message_tool.py tests/cron/test_scheduler.pyLocal runtime smoke on a forked Hermes deployment also confirmed cron delivery posted into the expected Slack thread.