MCPcopy Index your code
hub / github.com/showlab/Code2Video / parse_feedback_and_modify

Method parse_feedback_and_modify

src/scope_refine.py:776–802  ·  view source on GitHub ↗

feedback_list: ['... Solution: Line 121: self.place_at_grid(... )', ...]

(self, feedback_list: List[str])

Source from the content-addressed store, hash-verified

774 return "\n".join(modified_lines)
775
776 def parse_feedback_and_modify(self, feedback_list: List[str]) -> str:
777 """feedback_list: ['... Solution: Line 121: self.place_at_grid(... )', ...]"""
778 if not isinstance(feedback_list, list):
779 return self.original_code
780
781 modifications: List[Dict[str, Any]] = []
782 line_pat = re.compile(r"\bline\s+(\d+)\b", re.IGNORECASE)
783 call_pat = re.compile(r"self\.(?:place_at_grid|place_in_area)\([^\n\r]*?\)")
784
785 for item in feedback_list:
786 if not isinstance(item, str):
787 continue
788 # Extract line number and new code from feedback
789 m_sol = re.search(r"solution\s*:\s*(.*)$", item, flags=re.IGNORECASE)
790 sol = m_sol.group(1).strip() if m_sol else item.strip()
791 # Extract line number from feedback
792 m_line = line_pat.search(sol)
793 if not m_line:
794 continue
795 line_number = int(m_line.group(1))
796 # Extract new code from feedback
797 m_call = call_pat.search(sol)
798 if not m_call:
799 continue
800 new_code = m_call.group(0)
801 modifications.append({"line_number": line_number, "new_code": new_code})
802 return self.apply_grid_modifications(modifications)

Callers 1

generate_section_codeMethod · 0.95

Calls 1

Tested by

no test coverage detected