-
-
Notifications
You must be signed in to change notification settings - Fork 69.6k
iMessage echo loop leaks internal metadata and amplifies NO_REPLY into queue overflow #33281
Copy link
Copy link
Closed
Labels
dedupe:parentPrimary canonical item in dedupe clusterPrimary canonical item in dedupe cluster
Description
Summary
Severe iMessage delivery bug: assistant internal metadata and control outputs are being echoed back as inbound user messages, creating recursive message amplification and queue overflow.
Observed symptom examples in user-visible traffic:
NO_REPLY ... +#+#+#+#+#+assistant to=final ...- long repeated self-echo chains containing internal assistant markers
This turned routine silent acknowledgements into hundreds of reflected messages.
Impact
- User iMessage chat gets flooded with spammy echoed content
- Recursive loop can trigger queue overflow (
Dropped messages due to cap) - Internal/implementation markers leak into user channel (privacy/integrity risk)
Repro pattern (high confidence)
- iMessage channel active.
- Assistant sends
NO_REPLY(or short auto reply) on periodic jobs. - Delivery path reflects assistant output (including internal metadata markers) back as inbound content.
- Agent processes reflected content, emits another
NO_REPLY. - Loop repeats and escalates.
Expected
- Assistant-internal markers (e.g.,
assistant to=final, reasoning/meta wrappers) must never be delivered to user channels. - Outbound assistant messages should not be re-ingested as new inbound user messages in the same chat.
NO_REPLYshould be consumed internally, not mirrored back.
Actual
- Internal markers appear in iMessage chat.
- Messages are reflected into inbound queue, causing self-echo recursion.
Temporary mitigations used
- Paused user-facing announce cron jobs to reduce blast radius.
- Continued core monitoring manually while incident active.
Environment
- macOS host (OpenClaw latest stable around 2026-03-03)
- iMessage channel
- Gateway loopback setup
Requested fixes
- Strict sanitization at channel boundary: strip assistant-internal/meta fields before transport.
- Add anti-reflection guard (do not ingest assistant-originated outbound payloads as inbound user messages).
- Treat
NO_REPLYas terminal internal signal only. - Add loop protection/rate limit for identical self-echo patterns.
- Add telemetry marker for reflected-message detection.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
dedupe:parentPrimary canonical item in dedupe clusterPrimary canonical item in dedupe cluster
Type
Fields
Give feedbackNo fields configured for issues without a type.