-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
Telegram replies ignore silent notification intent and leak notify=false into message body #80569
Copy link
Copy link
Closed
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.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.no-staleExclude from stale automationExclude from stale automation
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:queueable-fixClawSweeper marked this issue as an existing queue_fix_pr work candidate.ClawSweeper marked this issue as an existing queue_fix_pr work candidate.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.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.no-staleExclude from stale automationExclude from stale automation
Type
Fields
Priority
None yet
Summary
A Telegram group/topic reply from OpenClaw was delivered as a normal notification even though the generated message ended with
notify=false. Thenotify=falsemarker appeared in the visible Telegram message body instead of being applied as delivery metadata.This suggests an issue at the OpenClaw/Codex harness delivery boundary: either the harness has no supported silent-send metadata path for Telegram replies, or a supported
notify=falseconvention is not being parsed/applied before the Telegram send.Observed symptom
In a Telegram forum topic, OpenClawBot sent this completion/update message:
Despite the trailing
notify=false, Telegram notified the user normally.Expected behavior
If a message or completion path carries a silent notification intent, OpenClaw should either:
disable_notification=true, orNO_REPLYin eligible group-chat contexts.The delivery-control marker should not appear in the visible Telegram message body.
Actual behavior
notify=falsewas rendered as literal text in Telegram.Likely affected path
This may be specific to subagent/completion-delivery or wake/probe updates, because the message looked like an automated completion/status report rather than a direct user-requested answer.
The standing order in this environment says subagent completion events should be delivered immediately. That may be forcing a normal Telegram reply while bypassing any notification options.
Hypotheses
notify=falseconvention, but it is only appended to text and never parsed into delivery metadata.notify: falseflag to Telegram Bot APIdisable_notification: true.Potential fix options
Option A: Add/repair structured delivery metadata
Represent notification behavior as structured metadata, not text. For Telegram, map
notify: falseor equivalent todisable_notification: truein the outbound adapter.Acceptance checks:
disable_notification=true.notify=falseis not included in the message body.Option B: Parse and strip legacy marker before delivery
If
notify=falseis already an established convention, strip a trailing standalone marker and convert it to delivery options before sending.Acceptance checks:
notify=falseis never visible to Telegram users.disable_notification=true.notify=falseis not accidentally modified.Option C: Make automated completion reports silent by default in group topics
For background wake/probe/subagent completion reports in Telegram groups/topics, default to silent delivery unless explicitly escalated.
Acceptance checks:
Option D: Suppress low-value completion reports in group contexts
When a completion event is informational and not directly requested, allow
NO_REPLY/suppression instead of forcing a Telegram message.Acceptance checks:
Notes
This is probably not an LLM/model behavior issue by itself. The visible
notify=falsestrongly points to metadata being serialized into plain text or not consumed by the delivery layer.