feat: 導入 AI 程式碼審查 action 並修正進入點與參數接線 #1

Merged
admin merged 30 commits from ai-review-resolve/develop-20260702-160700 into develop 2026-07-03 10:04:33 +00:00
Showing only changes of commit 5fbfec3aaf - Show all commits
+3 -4
View File
@@ -1,5 +1,4 @@
import path from 'path';
import { pathToFileURL } from 'url';
import { GITEA_REPOSITORY, PR_NUMBER, PR_HEAD_BRANCH, PR_BASE_BRANCH, getLLMConfig, FINDINGS_PATH, EXCLUSIONS_PATH } from './config.js';
admin marked this conversation as resolved Outdated
Outdated
Review

嚴重等級🟡 警告
審查員:Bard
問題:這一行 import 把大量設定常數擠成長長一串,讀起來像沒有換氣的樂句,與後續同檔案多個長 import 一起讓檔案開頭難以掃描。
建議:將多項具名 import 改成多行排列,並依來源模組分組維持一致節奏,例如每個匯入項目獨立一行。

**嚴重等級**:🟡 警告 **審查員**:Bard **問題**:這一行 import 把大量設定常數擠成長長一串,讀起來像沒有換氣的樂句,與後續同檔案多個長 import 一起讓檔案開頭難以掃描。 **建議**:將多項具名 import 改成多行排列,並依來源模組分組維持一致節奏,例如每個匯入項目獨立一行。
import { loadRoles, getRoleIntro } from './roles.js';
import { getPRDiff, postComment, getCommitMessageBySha, getBotReviewOutcome, shouldSkipBotCommit } from './gitea.js';
14
@@ -237,9 +236,9 @@ export async function main() {
section('Pipeline 結束');
}
// 僅在作為 CLI 進入點(node src/main.js)執行時自動啟動 pipeline
// 被 import(例如單元測試)時不自動執行,方便注入 mock 測試各分支
if (process.argv[1] && import.meta.url === pathToFileURL(process.argv[1]).href) {
// 預設一律自動啟動 pipeline(正式以 node 執行、或由 Gitea node action runtime 載入時皆會執行)。
// 僅單元測試會設 AI_REVIEW_SKIP_MAIN=1 略過自動執行,改為手動呼叫 export 的 main() 注入 mock 測試。
if (!process.env.AI_REVIEW_SKIP_MAIN) {
main().catch(e => {
error(`Runner failed: ${e.message}`);
process.exit(1);