MCPcopy Create free account
hub / github.com/Ishabdullah/Codey-v2 / suggest_fix

Method suggest_fix

core/error_database.py:285–315  ·  view source on GitHub ↗

Suggest a fix for an error. Args: error_type: Type of error error_message: Full error message Returns: Suggested fix or None

(self, error_type: str, error_message: str)

Source from the content-addressed store, hash-verified

283 return results[:limit]
284
285 def suggest_fix(self, error_type: str, error_message: str) -> Optional[str]:
286 """
287 Suggest a fix for an error.
288
289 Args:
290 error_type: Type of error
291 error_message: Full error message
292
293 Returns:
294 Suggested fix or None
295 """
296 # First, check learned fixes
297 similar = self.find_similar_errors(error_type, error_message, limit=3)
298 for pattern, score in similar:
299 if pattern.success and pattern.fix:
300 info(f"Using learned fix (similarity: {score:.2f})")
301 return pattern.fix
302
303 # Fallback: use fix patterns
304 category = self.ERROR_CATEGORIES.get(error_type, "unknown")
305 if category in self.FIX_PATTERNS:
306 for err_pattern, fix_template in self.FIX_PATTERNS[category]:
307 if err_pattern in error_type or err_pattern in error_message:
308 # Extract context for template
309 context = {
310 "module": self._extract_module(error_message),
311 "line": self._extract_line(error_message),
312 }
313 return fix_template.format(**context)
314
315 return None
316
317 def _extract_module(self, error_message: str) -> str:
318 """Extract module name from error message."""

Callers 1

test_suggest_fixMethod · 0.95

Calls 5

find_similar_errorsMethod · 0.95
_extract_moduleMethod · 0.95
_extract_lineMethod · 0.95
infoFunction · 0.90
getMethod · 0.45

Tested by 1

test_suggest_fixMethod · 0.76