fix: re-detect sessions after idle cleanup

Added forgetSession() to SessionMonitor. When watcher marks a session
idle/done, it now clears the key from the monitor's known sessions map.
Next poll cycle re-detects the session if the transcript is still active,
creating a fresh status post.
This commit is contained in:
sol
2026-03-07 18:52:44 +00:00
parent 6d31d77567
commit 3a8532bb30
2 changed files with 11 additions and 1 deletions

View File

@@ -67,6 +67,15 @@ class SessionMonitor extends EventEmitter {
if (this.logger) this.logger.info('SessionMonitor stopped');
}
/**
* Remove a session from known sessions so it can be re-detected on next poll.
* Called when the watcher marks a session as idle/done.
* @param {string} sessionKey
*/
forgetSession(sessionKey) {
this._knownSessions.delete(sessionKey);
}
/**
* Get all agent directories under transcriptDir.
* @private