{"record":{"id":"f8610878840c6937","repo":"asciinema/asciinema","slug":"not-an-asciicast-v3-file","errorCode":null,"errorMessage":"not an asciicast v3 file","messagePattern":"not an asciicast v3 file","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/asciicast/v3.rs","lineNumber":78,"sourceCode":"enum V3EventCode {\n    Output,\n    Input,\n    Resize,\n    Marker,\n    Exit,\n    Other(char),\n}\n\npub struct Parser {\n    header: V3Header,\n    prev_time: Duration,\n}\n\npub fn open(header_line: &str) -> Result<Parser> {\n    let header = serde_json::from_str::<V3Header>(header_line)?;\n\n    if header.version != 3 {\n        bail!(\"not an asciicast v3 file\")\n    }\n\n    Ok(Parser {\n        header,\n        prev_time: Duration::from_micros(0),\n    })\n}\n\nimpl Parser {\n    pub fn parse<'a, I: Iterator<Item = io::Result<String>> + Send + 'a>(\n        mut self,\n        lines: I,\n    ) -> Asciicast<'a> {\n        let term_theme = self.header.term.theme.as_ref().map(|t| t.into());\n\n        let header = Header {\n            term_cols: self.header.term.cols,\n            term_rows: self.header.term.rows,","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/asciinema/asciinema/blob/77498061982889f68ba1f6e8b666dd8d13246250/src/asciicast/v3.rs#L60-L96","documentation":"Sentinel validation error from the asciicast v3 parser's open(): the first line parsed as a JSON header but its version field is not 3. The input is an older asciicast (v1 or v2) or not an asciicast file, so the v3 parser cannot handle it.","triggerScenarios":"Thrown at src/asciicast/v3.rs:78 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Detect the version from the header line and dispatch to the matching loader","Upgrade the recording to asciicast v3 format before loading","Show the user which version was detected and what is supported"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77498061982889f68ba1f6e8b666dd8d13246250","analyzedAt":"2026-09-03T06:12:25.119Z","contentChangedAt":"2026-09-03T06:12:25.119Z","schemaVersion":2},"datasetVersion":"2026-09-10T12:17:11.382Z"}