0fa778353b
Implements #137 - Agent timeout handling. Changes: - Add TASK_TIMEOUT_HOURS config (default: 1 hour) - Update queue item to track opencode_session_id and pid - Add check_task_timeouts() function that: - Checks notified tasks against timeout threshold - Kills process if exceeded - Marks session as 'timeout' state - Integrate timeout check into queue daemon loop Timeout behavior: - Task is marked 'notified' when PM receives it - If not completed within TASK_TIMEOUT_HOURS, task is killed - Queue item marked 'error', session marked 'timeout'