feat: learn framework architecture incompatibilities

This commit is contained in:
CoolBoy
2026-08-12 08:02:51 +08:00
parent d908706f9a
commit 615bcad124
10 changed files with 503 additions and 9 deletions

View File

@@ -18,7 +18,8 @@ MAX_ERROR_REPORT_BYTES = 1_000_000
ERROR_LINE_PATTERN = re.compile(
r"(?:\b(?:[A-Za-z_]*(?:Error|Exception)|PREFLIGHT_[A-Z_]+|OOM)\b|"
r"out of memory|not supported|unsupported|does not recognize|cannot|can.t|"
r"not found|no such file|failed to|invalid|traceback|找不到空闲卡)",
r"not found|no such file|failed to|invalid|traceback|"
r"找不到空闲卡|不支持|暂不支持|不兼容|请换用|请更换)",
re.IGNORECASE,
)
@@ -74,10 +75,14 @@ def classify_failure_archive(
error_lines = _extract_error_lines(runtime_log)
report_code = str(report.get("code") or "").strip() or None
classification = classify_failure_report(report_code, error_lines)
suggestion = str(report.get("suggestion") or "")[:500] or None
classification_inputs = [*error_lines]
if suggestion:
classification_inputs.append(suggestion)
classification = classify_failure_report(report_code, classification_inputs)
result: dict[str, Any] = {
"failureCode": report_code,
"failureSuggestion": str(report.get("suggestion") or "")[:500] or None,
"failureSuggestion": suggestion,
"failureCategory": classification.category,
"failureScope": classification.scope,
"failureAction": classification.action,