-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
Signal final replies can be stranded by gateway restart after send_attempt_started #90233
Copy link
Copy link
Open
Labels
P1High-priority user-facing bug, regression, or broken workflow.High-priority user-facing bug, regression, or broken workflow.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.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.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Description
Metadata
Metadata
Assignees
Labels
P1High-priority user-facing bug, regression, or broken workflow.High-priority user-facing bug, regression, or broken workflow.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.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.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Priority
None yet
Summary
A Signal final reply can be lost/stranded when the OpenClaw gateway restarts while a send is in progress. The gateway later reports a pending delivery in
send_attempt_startedand refuses blind replay, but the user-facing outcome is that the assistant never visibly replies on Signal unless a human nudges the session again.This is especially bad when the reply is an important completion/fix report: OpenClaw can look healthy locally while the phone-visible Signal reply never arrives.
Observed environment
2026.6.1(2e08f0f)signal-cli0.14.4.1(latest upstream release at time observed)Evidence from one local incident
Sanitized timeline:
channels/signal delivered reply ...; in the local signal-cli account DB there were matching outgoing send-log rows for the target recipient.The current behavior is internally conservative, but operationally it silently drops the user-visible completion path.
Expected behavior
When a gateway restart interrupts a Signal delivery after
send_attempt_started, OpenClaw should not leave the user in a state where the session appears completed locally but no Signal-visible reply arrives.Any of these would be better than the current outcome:
delivered replymeans phone-visible/adapter-confirmed delivery, or use a weaker term such assend accepted.Acceptance criteria
send_attempt_started).Notes
This does not look like a signal-cli version-skew issue. The observed host was already on
signal-cli 0.14.4.1, which was the latest AsamK/signal-cli release at observation time. The failure is in OpenClaw's delivery lifecycle/restart recovery semantics aroundsend_attempt_started.