Files
ai-code-review/.gitea/ai-review/exclusions.json
T
jiantw83 ab384fe108
CI / 1. BUILD (pull_request) Successful in 2s
CI / 2. TEST (pull_request) Successful in 3m6s
CI / 3. RESULT (pull_request) Successful in 1s
chore(ai-review 狀態): 更新 findings 與 exclusions.json
2026-08-07 16:42:28 +00:00

70 lines
3.4 KiB
JSON

[
{
"addedAt": "2026/08/07 16:47:53",
"prNumber": 4,
"reviewer": "Bard",
"severity": "警告",
"file": "readme.md",
"startLine": 3,
"endLine": 3,
"problem": "這份 README 已經長成機械化的 API 編目,還把時間戳與大量硬編碼連結一起寫進來,讓主文件變得又厚又脆,讀者很難快速抓到重點。",
"reason": "此專案的 README 本身就是生成式 API 參考文件,維持完整索引與連結有助於內部使用,屬於文件取捨而非功能性缺陷。"
},
{
"location": "src/main.js:59",
"role": "Bard",
"original_finding": "刪掉這種會隨流程變動而失真的數量型描述;若真要提醒收尾差異,改成更穩定的概念性說明即可。",
"reason": "AI 對話收斂判定為誤報(問題在最新程式碼中不成立或不適用)"
},
{
"location": "entrypoint.sh:2",
"role": "Bard",
"original_finding": "移除這種會過期的時間戳註解,只保留真正需要提醒讀者的簡短說明即可。",
"reason": "AI 對話收斂判定為誤報(問題在最新程式碼中不成立或不適用)"
},
{
"addedAt": "2026/08/07 16:39:03",
"prNumber": null,
"reviewer": "Assassin",
"severity": "警告",
"file": "action.yml",
"startLine": 14,
"endLine": 14,
"problem": "action.yml 中新增的 inputs.model 沒有在 GitHub Actions 層面進行輸入驗證。雖然描述寫著「僅允許英數字、點、底線與連字號」,但使用者可以提供任意字符,這些值會先進入環境變數,再由程式端驗證。",
"reason": "GitHub / Gitea 的 action schema 不提供字串輸入的正則驗證;本專案已在程式端做完整驗證,action.yml 無法再向前移到平台層。"
},
{
"addedAt": "2026/08/07 16:39:03",
"prNumber": null,
"reviewer": "Bard",
"severity": "警告",
"file": "readme.md",
"startLine": 1,
"endLine": 1,
"problem": "新文件採用小寫 readme.md,和倉庫中常見的 README.md 命名慣例不合。",
"reason": "這個檔名是現有專案慣例的一部分,直接改名會牽動大量內部連結與生成內容,屬於文件命名取捨。"
},
{
"addedAt": "2026/08/07 16:39:03",
"prNumber": null,
"reviewer": "Mage",
"severity": "警告",
"file": "src/findings.js",
"startLine": 658,
"endLine": 658,
"problem": "applyExclusions 的比對邏輯在 (locationMatches && roleMatches && (textMatches || ...)) 中,若排除規則只指定 filePath 不指定 role,會產生「該檔案內所有角色的問題都被排除」的非預期行為;若只指定 role 不指定 filePath,則「該角色所有檔案的問題都被排除」。此為對稱性缺陷",
"reason": "此處的排除規則刻意把 filePath / role 當成可獨立放寬的過濾條件,讓已知誤報可以用較粗粒度收斂;行為與設計一致。"
},
{
"addedAt": "2026/08/07 16:39:03",
"prNumber": null,
"reviewer": "Mage",
"severity": "建議",
"file": "src/resolve.js",
"startLine": 84,
"endLine": 84,
"problem": "groupConversations 在設置 botFinding 時用 botFindings[0],若該對話的 botFindings 陣列為空,botFinding 會為 undefined。",
"reason": "程式已將 botFinding 以 null 初始化,且下游邏輯以 botFindings 陣列為主要資料來源;此為相容舊邏輯的保守設計。"
}
]