Signal handlers (SIGTERM, SIGINT, beforeExit) were registered on every session_start but never removed. Over multiple sessions within the same process, handlers accumulated — each adding another cleanupAll() call and descendant kill sweep on exit. Fix: session_shutdown now calls process.off() for each handler before cleanupAll(), preventing accumulation. Also: signalCleanup now kills ALL descendant processes (not just those tracked by bg-shell) to catch bash-tool spawned children. Alert queue: pendingAlerts is capped at 50 entries to prevent unbounded growth when background processes generate rapid alerts faster than the agent consumes them. pushAlert signature updated to accept null bg parameter for system-level alerts that don't originate from a tracked process. |
||
|---|---|---|
| .. | ||
| bg-shell-command.ts | ||
| bg-shell-lifecycle.ts | ||
| bg-shell-tool.ts | ||
| extension-manifest.json | ||
| index.ts | ||
| interaction.ts | ||
| output-formatter.ts | ||
| overlay.ts | ||
| process-manager.ts | ||
| readiness-detector.ts | ||
| types.ts | ||
| utilities.ts | ||