{"record":{"id":"38b0ff6149ab9358","repo":"openai/codex","slug":"timedout","errorCode":"TimedOut","errorMessage":"timed out discarding buffered terminal input","messagePattern":"timed out discarding buffered terminal input","errorType":"exception","errorClass":"io::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/tui/src/tui/input_boundary.rs","lineNumber":36,"sourceCode":"    fn drop(&mut self) {\n        if self.active {\n            let _ = super::restore_after_exit();\n        }\n    }\n}\n\n/// Drain decoded and unread input before a screen can accept a security-sensitive decision.\n///\n/// Partial control sequences remain quarantined; an unresolved boundary fails after one second.\npub(crate) fn discard_pending_terminal_input() -> Result<()> {\n    #[cfg(unix)]\n    let _ = crossterm::event::discard_buffered_input()?;\n\n    let deadline = Instant::now() + Duration::from_secs(/*secs*/ 1);\n    loop {\n        let remaining = deadline.saturating_duration_since(Instant::now());\n        if remaining.is_zero() {\n            return Err(io::Error::new(\n                io::ErrorKind::TimedOut,\n                \"timed out discarding buffered terminal input\",\n            ));\n        }\n\n        if crossterm::event::poll(remaining.min(Duration::from_millis(/*millis*/ 10)))? {\n            let _ = crossterm::event::read()?;\n            continue;\n        }\n\n        #[cfg(unix)]\n        if crossterm::event::discard_buffered_input()?\n            != crossterm::event::InputDiscardStatus::Complete\n        {\n            continue;\n        }\n\n        #[cfg(any(unix, windows))]","sourceCodeStart":18,"sourceCodeEnd":54,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/tui/src/tui/input_boundary.rs#L18-L54","documentation":"Error \"timed out discarding buffered terminal input\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/tui/src/tui/input_boundary.rs:36 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}