-
-
Notifications
You must be signed in to change notification settings - Fork 79.1k
[Bug]: Discord subagent thread binding omits delivery origin for initial child run #83170
Copy link
Copy link
Closed
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:message-lossChannel message delivery can be lost, duplicated, or misrouted.Channel message delivery can be lost, duplicated, or misrouted.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:message-lossChannel message delivery can be lost, duplicated, or misrouted.Channel message delivery can be lost, duplicated, or misrouted.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Bug type
Behavior bug (incorrect output/state without crash)
Beta release blocker
No
Summary
Discord thread-bound delegated subagent sessions can be accepted and bound successfully, but the child still posts its initial reply into the parent channel because the Discord
subagent_spawninghook does not return a routable delivery origin.Steps to reproduce
sessions_spawnwiththread=trueandmode=session.Expected behavior
When Discord thread binding succeeds for a delegated child session, the initial child run should route into the bound Discord thread.
Actual behavior
The child session is accepted and the binding exists, but the initial child reply still routes to the parent channel.
OpenClaw version
2026.5.6
Operating system
macOS (Apple Silicon)
Install method
pnpm dev/ local source checkout reproduction, plus managed local OpenClaw runtime reproductionModel
openai/gpt-5.4Provider / routing chain
openclaw -> discord bot adapter -> openai/gpt-5.4Additional provider/model setup details
Reproduced from a Discord group session with
channels.discord.threadBindings.enabled=trueandspawnSubagentSessions=true.Logs, screenshots, and evidence
sessions_spawn(thread=true, mode=session)returning accepted while the child session still resolved to the parent#generalchannel.extensions/discord/src/subagent-hooks.ts.deliveryOriginis returned fromsubagent_spawning.threadBindingReady: truewithoutdeliveryOrigin.Impact and severity
sessions_spawn.Additional information
Related context: