chore(ai-review 狀態): 排除 3 條誤報(測試已涵蓋/風格/isFinitePositive 已安全),清空 findings.json
This commit is contained in:
@@ -530,5 +530,23 @@
|
||||
"role": "Leo",
|
||||
"original_finding": "測試案例直接引用 describe 外層定義的 `usage` 變數,若被其他測試修改會造成測試間隱性耦合;建議改用區域變數或工廠函式生成測試資料。",
|
||||
"reason": "誤判。該 `const usage` 為不可變的測試夾具,所有測試只讀不寫、未曾被任何案例 mutate,不存在跨測試耦合;新增的邊界測試已各自使用區域 usage 物件。為一個唯讀 fixture 改工廠函式屬過度設計。"
|
||||
},
|
||||
{
|
||||
"location": "app/usage.test.js:254",
|
||||
"role": "Mage",
|
||||
"original_finding": "測試情境雖處理了 NaN,但未涵蓋 limit 為 0 或負數等極端數值,可能輸出 Infinity 或負百分比。",
|
||||
"reason": "誤判,測試已存在。`returns null percent for non-finite or non-positive quota limits` 與 `does not output Infinity/NaN/negative percent for invalid quota numbers` 已涵蓋 limit 為 0/負數/Infinity/NaN/undefined,皆驗證輸出「無法計算」、不含 NaN/Infinity/負百分比。"
|
||||
},
|
||||
{
|
||||
"location": "app/usage.test.js:200",
|
||||
"role": "Bard",
|
||||
"original_finding": "邊界測試迴圈 [0, -5, Infinity, NaN, undefined] 混用不同型別,建議拆成多個測試以提升可讀性。",
|
||||
"reason": "主觀風格/不採納。該迴圈已對每個值帶入 assert 訊息(如 `quota.limit=${limit} 應算不出百分比`),測試失敗時可直接定位是哪個輸入;用單一資料驅動迴圈反而精簡、不易遺漏案例。"
|
||||
},
|
||||
{
|
||||
"location": "app/usage.js:216",
|
||||
"role": "Maya",
|
||||
"original_finding": "isFinitePositive 沒有對 null/undefined 做顯式檢查,未來可能被錯誤複用。",
|
||||
"reason": "誤判。`isFinitePositive` 對 null(Number(null)=0 → 0>0 為 false)與 undefined(Number(undefined)=NaN → Number.isFinite 為 false)皆正確回傳 false,本就涵蓋這些輸入;函式名已表明只接受有限正數,無須再加冗餘檢查。"
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user