{"record":{"id":"2ff9e909a8da0ffd","repo":"zed-industries/zed","slug":"no-edits-found-in-commit","errorCode":null,"errorMessage":"no edits found in commit","messagePattern":"no edits found in commit","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/edit_prediction_cli/src/split_commit.rs","lineNumber":685,"sourceCode":"    let mut patch = Patch::parse_unified_diff(commit);\n\n    // Filter header to only keep lines starting with \"//\"\n    let header_lines: Vec<&str> = patch\n        .header\n        .lines()\n        .filter(|line| line.starts_with(\"//\"))\n        .collect();\n    patch.header = if header_lines.is_empty() {\n        String::new()\n    } else {\n        header_lines.join(\"\\n\") + \"\\n\"\n    };\n\n    // Compute the split point\n    let stats = patch.stats();\n    let num_edits = stats.added + stats.removed;\n\n    anyhow::ensure!(num_edits != 0, \"no edits found in commit\");\n\n    let generated_split_commit = match split_point {\n        None => {\n            let split = sample_split_point(&patch, rng.as_mut());\n            generate_split_commit_at_split(&patch, split, rng.as_mut())?\n        }\n        Some(SplitPoint::Fraction(fraction)) => {\n            let split = resolve_split_point_value(SplitPointValue::Fraction(fraction), num_edits);\n            generate_split_commit_at_split(&patch, split, rng.as_mut())?\n        }\n        Some(SplitPoint::Index(index)) => {\n            let split = resolve_split_point_value(SplitPointValue::Index(index), num_edits);\n            generate_split_commit_at_split(&patch, split, rng.as_mut())?\n        }\n        Some(SplitPoint::Kind(kind)) => sample_split_commit_of_kind(&patch, kind, rng.as_mut())?,\n        Some(SplitPoint::KindWithSplit { kind, split_point }) => {\n            let split = resolve_split_point_value(split_point, num_edits);\n            let generated_split_commit =","sourceCodeStart":667,"sourceCodeEnd":703,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/edit_prediction_cli/src/split_commit.rs#L667-L703","documentation":"After parsing the commit's unified diff, the added+removed line count is zero (pure rename/metadata change or empty diff), leaving nothing to split into before/after states; the ensure! guard aborts example generation.","triggerScenarios":"Thrown at crates/edit_prediction_cli/src/split_commit.rs:685 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Choose a commit that modifies at least one line of content","Skip empty or rename-only commits when curating examples"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}