Files
MATTERMOST_OPENCLAW_LIVESTATUS/src
sol 3842adf562 fix: ghost-watch reactivation for consistent session restart
Problem: after a session completes, removeSession() deleted the file→session
mapping. When the next user message caused the JSONL to be written, fs.watch
fired but fileToSession returned undefined — silently dropped. Reactivation
only happened on the next session-monitor poll (up to 2s later), and by then
the watcher had missed the first lines of the new turn.

Fix:
- removeSession() keeps the file in fileToSession as a ghost marker
- fs.watch fires → ghost detected → emit 'session-reactivate'
- watcher-manager clears completedSessions cooldown + calls pollNow()
- session-monitor re-detects immediately with no poll lag
- Ghost removed after first fire (one-shot)

Also adds SessionMonitor.pollNow() for forced immediate polling.
2026-03-09 15:53:53 +00:00
..