fix(LLM 審查流程): 避免單一角色失敗中止 pipeline
CI / AI Code Review (pull_request) Failing after 7s

This commit is contained in:
2026-06-26 09:26:12 +00:00
parent a62bfbd4b8
commit 6c3e7b9d37
3 changed files with 41 additions and 12 deletions
+9 -1
View File
@@ -122,10 +122,18 @@ async function main() {
}
const analyses = await Promise.allSettled(roles.map(role => analyzeWithRole(role, diff)));
const newFindings = [];
let fulfilledAnalyses = 0;
for (let i = 0; i < analyses.length; i++) {
if (analyses[i].status === 'fulfilled') newFindings.push(...analyses[i].value);
if (analyses[i].status === 'fulfilled') {
fulfilledAnalyses += 1;
newFindings.push(...analyses[i].value);
}
else warn(`[${roles[i].name}] 分析失敗(跳過): ${analyses[i].reason?.message}`);
}
if (fulfilledAnalyses === 0) {
result(false, '所有角色分析皆失敗,終止流程以避免誤判為審查通過');
process.exit(1);
}
// 對只有檔名、缺行號的問題,反問原角色補上行號(最多重試數次),確保後續能行內標註
await resolveMissingLineNumbers(newFindings, diff);
output(`新 findings ${newFindings.length} 筆(${formatFindingsStatsLine(newFindings)}`);