{"record":{"id":"ebb9484e1f676495","repo":"zed-industries/zed","slug":"failed-to-generate-evaluation-example-for-commit-ebb948","errorCode":null,"errorMessage":"failed to generate evaluation example for commit {} at line {}: {}","messagePattern":"failed to generate evaluation example for commit (.+?) at line (.+?): (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/edit_prediction_cli/src/split_commit.rs","lineNumber":593,"sourceCode":"                    Ok(case) => case,\n                    Err(e) => {\n                        let err_msg = format!(\n                            \"failed to generate evaluation example for commit {} at line {}: {}\",\n                            annotated.commit_sha,\n                            line_num + 1,\n                            e\n                        );\n                        if e.is::<NoMatchingSplitPointError>() {\n                            eprintln!(\"skipping: {}\", err_msg);\n                            continue;\n                        }\n                        match failed {\n                            FailedHandling::Skip | FailedHandling::SkipNoFiles => {\n                                eprintln!(\"{}\", err_msg);\n                                continue;\n                            }\n                            FailedHandling::Keep => {\n                                anyhow::bail!(err_msg);\n                            }\n                        }\n                    }\n                };\n\n                let json = if args.pretty {\n                    serde_json::to_string_pretty(&case)\n                } else {\n                    serde_json::to_string(&case)\n                }\n                .context(\"failed to serialize evaluation case as JSON\")?;\n\n                output_lines.push(json);\n            }\n\n            processed_commits += 1;\n            eprint!(\n                \"\\rsplit-commit: processed {} commits, generated {} examples\",","sourceCodeStart":575,"sourceCodeEnd":611,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/edit_prediction_cli/src/split_commit.rs#L575-L611","documentation":"Bailed in the single-sample path of `ep split-commit` (no `--num-samples`) when generating an evaluation example for a commit fails and `--failed` is `keep` (the default). Identical semantics to the multi-sample bail: keep aborts the run on the first failing commit, while skip/skip-no-files log and continue, and NoMatchingSplitPointError is always skipped.","triggerScenarios":"Running `ep split-commit` without `--num-samples` and with `--failed keep` (default) on an input containing a commit whose evaluation-case generation fails (diff parsing, cursor extraction, split-point validation).","commonSituations":"First pass over a new annotated-commit dump where a few commits have malformed diffs; the default keep mode surfacing the first bad sample immediately.","solutions":["Read the inner error after the colon to see why this commit failed to convert","Re-run with `--failed skip` to continue past bad commits and log them","Remove or repair the offending commit in the input JSONL, or use a different `--split-point` kind for that data"],"exampleFix":"# before\nep split-commit input.jsonl\n\n# after\nep split-commit --failed skip input.jsonl","handlingStrategy":"fallback","validationCode":null,"typeGuard":"fn is_expected_split_failure(err: &anyhow::Error) -> bool {\n    err.is::<NoMatchingSplitPointError>()\n}","tryCatchPattern":"Same as the multi-sample path: downcast for NoMatchingSplitPointError to skip; otherwise follow --failed (skip logs and continues, keep aborts with the inner cause).","preventionTips":["Default scripts to --failed skip and switch to keep only when curating","Log skipped commit ids so they can be repaired and re-fed","Keep runs resumable so an abort under keep loses no completed work"],"tags":["dataset-generation","edit-prediction","cli","git"],"backgroundTag":"sample-generation-failed","analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}