-
-
Notifications
You must be signed in to change notification settings - Fork 56.9k
Open
Description
Problem
When the gateway processes an inbound message, there is no way to know what state it is in — whether it was accepted, is currently being processed by the AI, was successfully delivered, or failed silently.
This makes it difficult to diagnose:
- "I sent a message but never got a reply" — was it accepted? Did the AI run? Did delivery fail?
- "The bot seems stuck" — is it actually generating, or did it silently error?
- Operators running multiple agents have no way to audit message flow across sessions
Current behavior
- Inbound messages are processed in-memory with no persistent state tracking
- If the gateway crashes mid-generation, there is no record the message was ever accepted
- Delivery failures are logged but not queryable after the fact
openclaw channels statusshows channel health but not per-message state
Expected behavior
Each inbound message turn should have a persistent lifecycle record tracking:
- When it was accepted
- Which agent/session is processing it
- Current status (accepted → running → delivered / aborted / failed)
- Final disposition with timestamp
This enables operators to answer "what happened to message X?" and build monitoring/alerting on message flow health.
Additional context
Related to #26764 — turn tracking is a prerequisite for reliable dedup since it provides a persistent record of which turns have already been processed.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels