{"record":{"id":"dc9709d80ee3c687","repo":"atuinsh/atuin","slug":"unknown-script-record-version-other","errorCode":null,"errorMessage":"unknown script record version {other:?}","messagePattern":"unknown script record version (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/atuin-scripts/src/store/record.rs","lineNumber":87,"sourceCode":"                    // delete\n                    1 => {\n                        let bytes = bytes.remaining_slice();\n                        let (id, _) = decode::read_str_from_slice(bytes).map_err(error_report)?;\n                        Ok(Self::Delete(Uuid::parse_str(id)?))\n                    }\n\n                    // update\n                    2 => {\n                        // written by encode::write_bin above\n                        let _ = decode::read_bin_len(&mut bytes).map_err(error_report)?;\n                        let script = Script::deserialize(bytes.remaining_slice())?;\n                        Ok(Self::Update(script))\n                    }\n\n                    _ => Err(eyre!(\"unknown script record type {record_type}\")),\n                }\n            }\n            other => bail!(\"unknown script record version {other:?}\"),\n        }\n    }\n}\n\n#[cfg(test)]\nmod tests {\n    use rstest::rstest;\n\n    use super::*;\n\n    #[test]\n    fn test_serialize_create() {\n        let script = Script::builder()\n            .id(uuid::Uuid::parse_str(\"0195c825a35f7982bdb016168881cbc6\").unwrap())\n            .name(\"test\".to_string())\n            .description(\"test\".to_string())\n            .shebang(\"test\".to_string())\n            .tags(vec![\"test\".to_string()])","sourceCodeStart":69,"sourceCodeEnd":105,"githubUrl":"https://github.com/atuinsh/atuin/blob/c0c717ab04c881764bcad4b3d169a507e2432643/crates/atuin-scripts/src/store/record.rs#L69-L105","documentation":"Decoder guard in ScriptRecord::deserialize: the record's version field is a value other than V0, meaning the script record was written by an Atuin release with an unknown wire-format version. A forward-compatibility stop — the client refuses to guess the unknown record layout.","triggerScenarios":"Thrown at crates/atuin-scripts/src/store/record.rs:87 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Upgrade Atuin to a version supporting script record version {other:?}","Re-sync the scripts store with a compatible client"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c0c717ab04c881764bcad4b3d169a507e2432643","analyzedAt":"2026-09-12T07:40:01.341Z","contentChangedAt":"2026-09-12T07:40:01.341Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}