chore(ai-review): 更新 findings 與 exclusions 解決狀態
CI / AI Code Review (pull_request) Failing after 39s
CI / AI Code Review (pull_request) Failing after 39s
This commit is contained in:
@@ -82,5 +82,35 @@
|
||||
"role": "Rogue",
|
||||
"original_finding": "頻繁寫入讀取 opencode.json 設定檔造成無謂的 I/O;建議透過參數或環境變數傳入配置。",
|
||||
"reason": "summarize 每次 action 執行僅呼叫一次,並非「頻繁」;opencode 以 OPENCODE_CONFIG 指向設定檔為其官方配置介面,寫入單一小檔的 I/O 可忽略。"
|
||||
},
|
||||
{
|
||||
"location": "app/index.js:80",
|
||||
"role": "Bard",
|
||||
"original_finding": "分支命名格式若目標分支名稱過長,可能導致總長度超過 Git 限制;建議確保不超過 255 字元。",
|
||||
"reason": "buildResolveBranchName 已將主體截斷至 MAX_BRANCH_STEM_LENGTH(180),連同前綴 `resolve-conflict/`(17)與 runId 後綴,總長度約 207,遠低於 Git 的 255 上限,已滿足建議。"
|
||||
},
|
||||
{
|
||||
"location": "app/index.js:52",
|
||||
"role": "Mage",
|
||||
"original_finding": "opencode 失敗時,若相關資訊皆為空,fallback 機制產出的 PR 描述將空洞無效;建議檢查輸出內容或拋錯。",
|
||||
"reason": "fallbackSummary 的 title 在無 commit 時退回 `Merge <source> into <target>`,description 恆包含固定結構標題(## 變更摘要、### Commits、### 變更檔案)與 `(無)` 佔位,不會產生空字串;PR 仍具基本可讀內容,非缺陷。"
|
||||
},
|
||||
{
|
||||
"location": "app/lib/util.js:11, 13",
|
||||
"role": "Bard",
|
||||
"original_finding": "run 函式 Buffer 大小硬編碼,缺乏靈活性,且針對極端巨大輸入缺乏保護。",
|
||||
"reason": "maxBuffer(64MB)為刻意的上限保護而非預先配置;本 action 於即拋容器內執行,將其抽為環境變數只增配置面而無實益。等同已收錄的 util.js:14 排除(同一機制)。"
|
||||
},
|
||||
{
|
||||
"location": "app/index.js:176",
|
||||
"role": "Bard",
|
||||
"original_finding": "PR 已存在時僅記錄 log.info,CI 流程中可能需要更明確的提示;建議改用 log.warn 或 log.notice。",
|
||||
"reason": "「PR 已存在」是冪等重跑下的正常且預期結果,log.info 語意正確;改為 warn 會在正常流程中產生誤導性警告雜訊,屬偏好而非缺陷。"
|
||||
},
|
||||
{
|
||||
"location": "app/lib/git.js:32",
|
||||
"role": "Leo",
|
||||
"original_finding": "Sensitive Token 處理耦合在 Git 類別中,且未驗證有效性;建議將遮蔽邏輯交由 util.js 或於初始化時驗證。",
|
||||
"reason": "token 遮蔽邏輯已實作於 util.js 的 maskSecrets 並由 Git 類別重用(非重複實作);token 存在性已於 inputs.js 的 required('GITEA_TOKEN') 驗證。Git 持有 token 以組 http.extraheader 為必要,耦合度可接受。"
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user