Behavior
After any WhatsApp reconnect (status 428):
• Gateway continues receiving messages normally (inbound message appears in log)
• whatsapp-group-jsonl stops writing to JSONL permanently
• Plugin appears loaded and ready — no errors
• JSONL file freezes at last line before disconnect
What we verified
• openclaw gateway restart → JSONL does not resume
• Cold restart (pkill -TERM + openclaw gateway start) → JSONL does not resume
• 4+ restart cycles → JSONL always frozen at same line
• Gateway confirms inbound message in log after each restart → messages arriving but not delivered to hook
• JSONL manually verified with wc -l before and after sending real group message → no growth
• openclaw doctor --fix → no effect
• No whatsapp:reconnected, client:refresh or similar lifecycle event available to plugins
Root cause (analysis)
The whatsapp-group-jsonl hook loses its event binding after reconnect and does not rebind on any restart method currently available. The broken state survives full process restart, suggesting the binding is not re-initialized during startup after a previous reconnect cycle.
Expected behavior
JSONL resumes writing after any reconnect or restart.
Workaround
None available from outside the core. A watchdog was implemented to detect JSONL silence (600s threshold + no file growth) and trigger cold restarts — confirmed ineffective for this specific issue.
Request
Is there a fix planned for the WhatsApp channel plugin to rebind built-in hooks after reconnect? Is there any undocumented lifecycle event (e.g. channel:ready, whatsapp:ready) that could be used as a workaround?