diff --git a/crates/edit_prediction_cli/evals/flask--add-and-rename-test-function.md b/crates/edit_prediction_cli/evals/flask--add-and-rename-test-function.md index 2946013deb10a7d1082c35545b41164dacf2d40e..3487899176348f57824bf8ffd1002a388db35e1c 100644 --- a/crates/edit_prediction_cli/evals/flask--add-and-rename-test-function.md +++ b/crates/edit_prediction_cli/evals/flask--add-and-rename-test-function.md @@ -78,3 +78,21 @@ def test_static_url_path(): + assert rv.status_code == 404 + rv.close() ``` + +```diff +--- a/tests/test_basic.py ++++ b/tests/test_basic.py +@@ -1376,8 +1376,13 @@ +-def test_static_file_not_found(): +- pass ++def test_static_file_not_found(app, client): ++ rv = client.get("/static/nonexistent.html") ++ assert rv.status_code == 404 ++ assert rv.data.strip() == b"

Not Found

" ++ with app.test_request_context(): ++ pytest.raises(BuildError, flask.url_for, "static", filename="nonexistent.html") ++ rv.close() + + + def test_static_url_path(): +``` diff --git a/crates/edit_prediction_cli/evals/tree-sitter--tuple-to-struct-destructuring.md b/crates/edit_prediction_cli/evals/tree-sitter--tuple-to-struct-destructuring.md index a55495795e48cc24d19eb8c3aef7b55968dafab1..c9583405764f704cffbbd2fdd46c0487630fa1ac 100644 --- a/crates/edit_prediction_cli/evals/tree-sitter--tuple-to-struct-destructuring.md +++ b/crates/edit_prediction_cli/evals/tree-sitter--tuple-to-struct-destructuring.md @@ -138,7 +138,7 @@ revision = "24007727d42b4caceda3095ac685c463fae1ba1a" fn language_for_id(&self, id: usize) -> LoaderResult { - let (path, language, externals) = &self.languages_by_id[id]; -+ let LanguageEntry { path, language, external_files } = &self.languages_by_id[id]; ++ let LanguageEntry { path, language, external_files } = &self.languages_by_id[id]; language .get_or_try_init(|| { let src_path = path.join("src"); diff --git a/crates/edit_prediction_cli/src/format_prompt.rs b/crates/edit_prediction_cli/src/format_prompt.rs index fcb33def235fb6953e2da2638c5ee36f094031a3..17d8aa68359a771da72558cd21523f13e2df4b38 100644 --- a/crates/edit_prediction_cli/src/format_prompt.rs +++ b/crates/edit_prediction_cli/src/format_prompt.rs @@ -211,12 +211,17 @@ impl TeacherPrompt { pub fn parse(example: &Example, response: &str) -> Result<(String, Option)> { // Check if the model indicated no edits are needed + let no_edits = (String::new(), None); if let Some(last_codeblock) = extract_last_codeblock(&response) { if last_codeblock.trim() == Self::NO_EDITS { - return Ok((String::new(), None)); + return Ok(no_edits); } } + if response.trim().ends_with(Self::NO_EDITS) { + return Ok(no_edits); + } + // Extract updated (new) editable region from the model response. let new_editable_region = Self::extract_editable_region(&response)?; let cursor_offset = new_editable_region.find(Self::USER_CURSOR_MARKER); diff --git a/crates/edit_prediction_cli/src/repair.rs b/crates/edit_prediction_cli/src/repair.rs index a8b0002b8396808f5fedb22496f383eb3896198d..b6ad41d553dabf1e49f261f4cc745395fdb1d1f6 100644 --- a/crates/edit_prediction_cli/src/repair.rs +++ b/crates/edit_prediction_cli/src/repair.rs @@ -79,7 +79,7 @@ pub struct RepairArgs { fn model_for_backend(backend: BatchProvider) -> &'static str { match backend { - BatchProvider::Anthropic => "claude-sonnet-4-5", + BatchProvider::Anthropic => "claude-sonnet-4-6", BatchProvider::Openai => "gpt-5.2", } }