Problem
Two related reliability problems in the event bus system:
1. Silent message dropping
clawhive-bus/src/lib.rs:86 — try_send() with buffer size 8. When subscribers are slow, messages are silently dropped. Critical messages like NeedHumanApproval could be lost without any indication.
2. Ignored publish failures
clawhive-core/src/shell_tool.rs:81,133 — let _ = bus.publish(...) ignores publish failures with no logging. If a publish fails, there's no way to know.
Proposed Solution
- Increase channel buffer size or implement backpressure strategy for critical message types
- Add
tracing::warn! on publish failures across the codebase
- Consider differentiating critical vs. best-effort messages
Impact
- Reliability — prevents silent loss of critical messages (e.g., human approval requests)
- Observability — publish failures become visible in logs for debugging
Problem
Two related reliability problems in the event bus system:
1. Silent message dropping
clawhive-bus/src/lib.rs:86—try_send()with buffer size 8. When subscribers are slow, messages are silently dropped. Critical messages likeNeedHumanApprovalcould be lost without any indication.2. Ignored publish failures
clawhive-core/src/shell_tool.rs:81,133—let _ = bus.publish(...)ignores publish failures with no logging. If a publish fails, there's no way to know.Proposed Solution
tracing::warn!on publish failures across the codebaseImpact