From 4344681188fbb6173088a040f5170cb5a56ed535 Mon Sep 17 00:00:00 2001 From: Oleksiy Syvokon Date: Tue, 17 Feb 2026 10:37:05 +0200 Subject: [PATCH] ep: Rely on editable_region tags when parsing teacher output (#49334) Release Notes: - N/A --- crates/edit_prediction_cli/src/format_prompt.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/crates/edit_prediction_cli/src/format_prompt.rs b/crates/edit_prediction_cli/src/format_prompt.rs index dbdc4ab19b8310ca1b653bfad3977adc8717f926..8783cf8605af8450c12e224be9654f8288fb6580 100644 --- a/crates/edit_prediction_cli/src/format_prompt.rs +++ b/crates/edit_prediction_cli/src/format_prompt.rs @@ -209,16 +209,14 @@ impl TeacherPrompt { } pub fn parse(example: &Example, response: &str) -> Result<(String, Option)> { - // Extract updated (new) editable region from the model response. - // The model may include editable region markers in its output, so we need to strip them. - let new_editable_region = extract_last_codeblock(response); - // Check if the model indicated no edits are needed - if new_editable_region.trim() == Self::NO_EDITS { + let last_codeblock = extract_last_codeblock(&response); + if last_codeblock.trim() == Self::NO_EDITS { return Ok((String::new(), None)); } - let new_editable_region = Self::extract_editable_region(&new_editable_region)?; + // 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); let mut new_editable_region = new_editable_region.replace(Self::USER_CURSOR_MARKER, ""); let old_editable_region = Self::extract_editable_region(