Native codex sessions register only a tool bridge, so checkSessionDeath never schedules for them (bridge-server handleSocketClose skips tool bridges). On app-server death: no autopsy, no crash notice, no crashed visual, spawnLogPath never consumed, process tree can orphan. Old codex-bridge registered as agent bridge and got all of this. Related codex-engine gaps from the same review: ws abrupt-close/send-failure leaks turnWatchdog + never rejects in-flight requests (spurious 'turn stalled' ~20min later); turnPending cleared before turn/started (double-turn window); plain-spawn first-turn failure is silent (handoff branch tears down, plain branch only stderr-logs).
Native codex sessions register only a tool bridge, so
checkSessionDeathnever schedules for them (bridge-server handleSocketClose skips tool bridges). On app-server death: no autopsy, no crash notice, no crashed visual, spawnLogPath never consumed, process tree can orphan. Old codex-bridge registered as agent bridge and got all of this. Related codex-engine gaps from the same review: ws abrupt-close/send-failure leaks turnWatchdog + never rejects in-flight requests (spurious 'turn stalled' ~20min later); turnPending cleared before turn/started (double-turn window); plain-spawn first-turn failure is silent (handoff branch tears down, plain branch only stderr-logs).