f6b066ecfa
Replace the time-based ERROR_COOLDOWN_MS mechanism with an event-order based lastEventWasAbortError flag. This fixes the bug where abort errors permanently block todo continuation since session.idle only fires once during the cooldown. Now abort errors only skip continuation when they occur IMMEDIATELY before session.idle event. Any intervening event (message, tool execution) clears the abort state, allowing normal continuation flow on the next idle. Comprehensive tests added to verify: - Abort detection correctly blocks continuation when immediately before idle - Intervening events (assistant message, tool execution) clear abort state - Non-abort errors don't block continuation - Multiple abort events (only last one matters) - No time-based throttle preventing consecutive injections 🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)