pub fn invalidate_codex_websocket_pool_key(session_id: &str)
use typed conversation ownership internally