Commit Graph
60 Commits
Author SHA1 Message Date
ai-review-bot 0c29daa014 chore: update ai-review findings [ai-review-bot][failure]
CI / TEST (Antigravity) (pull_request) Failing after 51s
node-actions/template: CI / BUILD (pull_request) Successful in 28s
CI / TEST (Claude) (pull_request) Failing after 31s
CI / TEST (Codex) (pull_request) Failing after 41s
2026-07-20 10:07:27 +00:00
JefferyandClaude Opus 4.8 d8dd5ce92e chore(ai-review 狀態): 記錄 issue #10 誤報排除並回寫待人工 findings
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 27s
CI / TEST (Antigravity) (pull_request) Successful in 50s
CI / TEST (Codex) (pull_request) Successful in 3m2s
- exclusions.json 新增一條誤報(gitrepo.js:276 使用者名稱固定 ai-review-bot,依管理員指示)。
- 新增 findings 檔追蹤 4 條待人工處理問題(步驟編號硬編碼、兩處缺測試、debug 輸出取捨)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 18:04:23 +08:00
JefferyandClaude Opus 4.8 cc9c8afed7 docs(ai-review): 同步 JSDoc 對 main() 閉包改名的引用
配合 postComment/ensureIssueCreated 改名,更新 gitea.js 與 templates.js
JSDoc 內對兩個閉包的引用名稱。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 18:04:23 +08:00
JefferyandClaude Opus 4.8 0c108ab7f9 refactor(ai-review): 重新命名留言閉包並抽出診斷輸出長度常數
- postComment → queueOrPostComment:涵蓋建問題模式下可能只暫存不立即發布的語義。
- ensureIssueCreated → createIssueAndFlushBufferedComments:明示建立 issue 並清空暫存留言的完整行為。
- review.js agentFailureDetail 的 500 字上限抽為具名常數 AGENT_DIAGNOSTIC_OUTPUT_LIMIT。
純內部命名與可讀性調整,無外部行為變更。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 18:04:23 +08:00
JefferyandClaude Opus 4.8 83dd56f37f fix(resolveMergeBase): deepen HEAD 改以目前 HEAD 的 SHA 補抓 PR head 歷史
原策略 fetch 遠端符號 HEAD,會被伺服器解析為遠端預設分支,
只加深預設分支歷史、補不到目前 checkout 的 PR head,淺層時仍可能算不出 merge-base。
改先 rev-parse 取得 HEAD 的 commit SHA,以該 SHA 加深 PR head 側歷史。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 18:04:23 +08:00
ai-review-bot d354f30c27 chore: update ai-review findings [ai-review-bot][failure]
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Failing after 20s
CI / TEST (Codex) (pull_request) Failing after 27s
CI / TEST (Antigravity) (pull_request) Failing after 33s
2026-07-20 09:54:00 +00:00
JefferyandClaude Opus 4.8 b5264141c4 fix(推送觸發 CI): push 前重置 checkout 的自動 token extraheader,改以 PAT 身分推送
node-actions/template: CI / BUILD (pull_request) Successful in 3s
CI / TEST (Claude) (pull_request) Successful in 32s
CI / TEST (Antigravity) (pull_request) Successful in 52s
CI / TEST (Codex) (pull_request) Successful in 2m38s
checkout 於 http.<serverUrl>/.extraheader 持久化自動 Actions token;沿用它推送會被
Gitea 視為自動 token 觸發而不再觸發 workflow。改為推送前於同 scope 先空值重置、再注入
PAT 的 Authorization,使 findings 結果 commit 以 PAT 身分推送、觸發 PR synchronize。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:51:21 +08:00
ai-review-bot 4b779ee00b chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 09:43:57 +00:00
JefferyandClaude Opus 4.8 deb20bb078 chore(ai-review 狀態): 寫回議題 #9 待人工處理問題至 findings
node-actions/template: CI / BUILD (pull_request) Successful in 9s
CI / TEST (Claude) (pull_request) Successful in 27s
CI / TEST (Antigravity) (pull_request) Successful in 51s
CI / TEST (Codex) (pull_request) Successful in 3m4s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:40:50 +08:00
JefferyandClaude Opus 4.8 c63b1a6da2 perf(resolveMergeBase): 先 deepen base/HEAD,--unshallow 降為最後手段
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:40:50 +08:00
ai-review-bot ed883f6f20 chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 09:36:22 +00:00
JefferyandClaude Opus 4.8 3ef8a30291 fix(結果回報): 審查本輪不直接 exit 1,失敗只由步驟 1 讀結果 commit 訊息回報
node-actions/template: CI / BUILD (pull_request) Successful in 5s
CI / TEST (Claude) (pull_request) Successful in 29s
CI / TEST (Antigravity) (pull_request) Successful in 56s
CI / TEST (Codex) (pull_request) Successful in 2m59s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:33:20 +08:00
ai-review-bot be72aa0944 chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 09:32:01 +00:00
JefferyandClaude Opus 4.8 b277ff2f7c fix(建問題模式): 僅在有嚴重問題時讓 PR 相依於 issue,警告/建議不阻擋合併
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 27s
CI / TEST (Antigravity) (pull_request) Successful in 1m2s
CI / TEST (Codex) (pull_request) Failing after 3m16s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:28:43 +08:00
ai-review-bot 20a2b57998 chore: update ai-review findings [ai-review-bot][success] 2026-07-20 09:27:31 +00:00
JefferyandClaude Opus 4.8 05178be520 fix(推送觸發 CI): 合併 push-token 進 token,findings 一律以 token 認證推送觸發 CI
node-actions/template: CI / BUILD (pull_request) Successful in 5s
CI / TEST (Claude) (pull_request) Successful in 28s
CI / TEST (Antigravity) (pull_request) Successful in 57s
CI / TEST (Codex) (pull_request) Successful in 3m10s
- 移除 push-token input,token 兼作 Gitea API 認證與 findings 推送
- commitAndPushFindings 一律以 token 明確認證推送(不走 origin 自動 token);
  只要 token 為能觸發 CI 的 PAT,結果 commit 即再觸發 PR 的 CI,避免新 head 缺檢查卡合併
- ci.yaml 三個 job 移除 push-token,保留 token: ${{ secrets.TOKEN }}

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:24:18 +08:00
ai-review-bot 9e6e8bb793 chore: update ai-review findings [ai-review-bot][success] 2026-07-20 09:21:17 +00:00
JefferyandClaude Opus 4.8 321a717f91 chore(ci): Claude 測試 job 改用 claude-opus-4-8
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 26s
CI / TEST (Antigravity) (pull_request) Failing after 1m24s
CI / TEST (Codex) (pull_request) Successful in 3m33s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:17:42 +08:00
JefferyandClaude Opus 4.8 36bf2d8644 chore(ci): 三個測試 job 指定各工具最省 model 以降低消耗
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 23s
CI / TEST (Antigravity) (pull_request) Failing after 2m13s
CI / TEST (Codex) (pull_request) Successful in 2m49s
Antigravity→gemini-3.5-flash、Codex→gpt-5.5、Claude→claude-haiku-4-5

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 17:15:12 +08:00
ai-review-bot 85235e43a4 chore: update ai-review findings [ai-review-bot][success] 2026-07-20 08:39:40 +00:00
JefferyandClaude Opus 4.8 491c170d36 fix(AI 失敗診斷): 失敗時預設併印遮罩後 stdout(claude-code 錯誤寫在 stdout)
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Codex) (pull_request) Successful in 2m23s
CI / TEST (Claude) (pull_request) Successful in 17s
CI / TEST (Antigravity) (pull_request) Successful in 54s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:37:15 +08:00
ai-review-bot afed9a3cce chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 08:20:40 +00:00
JefferyandClaude Opus 4.8 71b93a885a fix(AI 失敗診斷): CLI 失敗預設輸出經遮罩的 stderr 片段以利除錯
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 23s
CI / TEST (Antigravity) (pull_request) Failing after 40s
CI / TEST (Codex) (pull_request) Failing after 2m39s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:17:59 +08:00
JefferyandClaude Opus 4.8 7b5c7c3e4f chore(ci): 審查 job 的 token 改用 secrets.TOKEN
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:17:59 +08:00
ai-review-bot 7823718ff4 chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 08:03:45 +00:00
JefferyandClaude Opus 4.8 4c2b6d4265 chore(ai-review 狀態): 記入議題 #8 不採納排除並寫回待人工處理 findings
node-actions/template: CI / BUILD (pull_request) Successful in 5s
CI / TEST (Antigravity) (pull_request) Failing after 35s
CI / TEST (Codex) (pull_request) Failing after 2m27s
CI / TEST (Claude) (pull_request) Successful in 16s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:01:05 +08:00
JefferyandClaude Opus 4.8 dcd3e931f4 docs(readme): 流程圖步驟順序反映舊留言標記延後執行
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:01:05 +08:00
JefferyandClaude Opus 4.8 0a51affa72 refactor(gitea client): 移除無呼叫端的 addLabelsToIssue
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:01:05 +08:00
JefferyandClaude Opus 4.8 f341dc6e07 perf(AI 失敗診斷): 除錯輸出先截長度上限再遮罩降低掃描成本
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:01:05 +08:00
JefferyandClaude Opus 4.8 8349fe8b71 fix(推送結果 commit): 帶認證推送改經 env 傳入並遮蔽 push 失敗錯誤
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 16:01:05 +08:00
ai-review-bot a6534ee076 chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 07:44:23 +00:00
JefferyandClaude Opus 4.8 cfbbbe5f6c docs(review): 修正 postSevereToIssue 註解為建問題模式警告/建議逐條留言
node-actions/template: CI / BUILD (pull_request) Successful in 5s
CI / TEST (Antigravity) (pull_request) Failing after 33s
CI / TEST (Claude) (pull_request) Successful in 22s
CI / TEST (Codex) (pull_request) Failing after 2m55s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:41:17 +08:00
ai-review-bot dae379273a chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 07:26:22 +00:00
JefferyandClaude Opus 4.8 b2129e0bc6 chore(ai-review 狀態): 寫回議題 #7 待人工處理問題至 findings
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 33s
CI / TEST (Antigravity) (pull_request) Failing after 37s
CI / TEST (Codex) (pull_request) Failing after 3m38s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:22:35 +08:00
ai-review-bot c980add807 chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 07:03:32 +00:00
JefferyandClaude Opus 4.8 10d826d1b1 chore(ci): 改以 PAT(push-token)推送 findings commit 觸發 CI
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 27s
CI / TEST (Antigravity) (pull_request) Failing after 34s
CI / TEST (Codex) (pull_request) Failing after 2m41s
各 job 的 token 改用 gitea.token、並新增 push-token: secrets.TOKEN,讓結果 commit 以 PAT 推送再觸發 CI,避免自動 token 推送不觸發而卡合併。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:00:32 +08:00
JefferyandClaude Opus 4.8 dbeb56589c docs(templates): 角色登場步驟編號統一為 5/7
解決議題 #7 🔵 建議(Bard/style):focusLabel 與 rolesComment 文件仍標「步驟 5/6」,但角色登場已調整為攻擊方步驟 5、防守方步驟 7;統一改為 5/7 與鄰近模板文件一致。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:00:32 +08:00
JefferyandClaude Opus 4.8 d3a09d892e feat(push-token): 新增 push-token 輸入以 PAT 推送結果 commit 觸發 CI
以自動 token(gitea.token/GITHUB_TOKEN)推送的 commit 不會再觸發 CI,導致新 head 缺檢查而卡合併;新增 push-token(PAT)由呼叫端以 secrets 傳入,改以 PAT 身分推送使 PR synchronize 事件再觸發 CI,由步驟 1 快速回報把結果蓋到新 head。留空=退回 token 走 origin 推送。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:00:23 +08:00
JefferyandClaude Opus 4.8 e44a8ed0cb feat(建問題模式): PR 相依追蹤 issue、標籤建立時帶入、議題問題逐條可回覆
整併議題 #7 的建問題模式流程調整與多項 findings 修復(index.js、gitea.js 交錯同檔,整檔歸此)。

- addIssueDependency:建立追蹤 issue 後讓 PR 相依於該 issue,issue 關閉前無法合併(需 repo 啟用問題相依)。
- 🔵 #10(Rogue/efficiency):標籤改於建立 issue 前先 selectLabels、createIssue 時一次帶入,移除事後 addLabelsToIssue 補掛的多餘 API 往返(addLabelsToIssue 保留為通用工具)。
- 使用者補充:建問題模式警告+建議改逐條發到 issue(postOthersToIssue),每條問題可個別回覆。
- 🔴 #1(Mage/logic)+使用者補充:resolveOldComments 延後到審查成功產生結果、發布問題留言前才執行,並以 currentRunCommentIds 排除本回合新留言,避免前置步驟失敗時舊結果被清卻無新結果。
- 🔵 #9(Bard/style):修正「無保留問題」段落註解與實作(靜默通過、不留言)一致。
- 同步更新相關 JSDoc(含 gitea.js listLabels/createIssue/addLabelsToIssue 使用情境)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 15:00:15 +08:00
JefferyandClaude Opus 4.8 35887f1a68 refactor(resolveMergeBase): 補抓歷史每步早停並彙整策略診斷
解決議題 #7 🟠 警告(Leo/maintainability、Rogue/efficiency):resolveMergeBase 原先無條件連做 --unshallow 與兩次 --deepen,且忽略各次 fetch 成敗、只把首次 merge-base 錯誤設為 cause。

- 改為資料驅動策略清單,每個補抓策略成功後立即重試 merge-base,一成功即回傳,避免多餘遠端往返(--unshallow 成功就不再 deepen)。
- 全部用盡才拋錯,訊息彙整各策略成功/失敗診斷(僅策略名與成敗,不含 git 原始輸出以免洩漏遠端資訊),並以 error.cause 保留首次錯誤。
- 本檔另含既有的 push-token(PAT)推送參數 pushToken(feat),維持原推送降級行為。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 14:59:49 +08:00
JefferyandClaude Opus 4.8 5c8332928b fix(ai-review 診斷輸出): AI 失敗預設不輸出原始 stdout/stderr、除錯開關下遮罩機密
解決議題 #7 🔴 嚴重(Assassin/security):agentFailureDetail 原本無遮罩擷取 stderr/stdout 各 500 字寫入 CI log,可能長期外洩 token、PII 或原始碼祕密。

- 預設只輸出 exit code/signal/killed 等不含機密的分類資訊。
- 僅在明確開啟 ACTIONS_STEP_DEBUG=true 時,才附上經新增 redactSecrets 遮罩(Authorization/token/URL 帳密/長金鑰)並去除控制字元的片段。
- 另新增 postOthersToIssue:建問題模式下警告+建議改逐條發到 issue,讓每條問題可個別回覆(feat,配合 index.js)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 14:59:38 +08:00
ai-review-bot d464998e4f chore: update ai-review findings [ai-review-bot][failure] 2026-07-20 05:53:12 +00:00
Jeffery e37a96433d fix(ci): 傳入各 AI 工具的 OAuth 憑證修正未登入問題
CI / TEST (Claude) (pull_request) Successful in 23s
CI / TEST (Codex) (pull_request) Failing after 3m4s
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Antigravity) (pull_request) Failing after 37s
2026-07-20 13:50:07 +08:00
Jeffery 4a68743b66 chore(審查記錄): AI 失敗時輸出 exit code 與 stderr/stdout 供診斷
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 28s
CI / TEST (Codex) (pull_request) Successful in 29s
CI / TEST (Antigravity) (pull_request) Failing after 33s
2026-07-20 13:41:41 +08:00
Jeffery 94b32737c5 feat(建問題模式): 無問題時靜默通過,不在 PR 留任何審查留言
node-actions/template: CI / BUILD (pull_request) Successful in 4s
CI / TEST (Claude) (pull_request) Successful in 24s
CI / TEST (Codex) (pull_request) Successful in 27s
CI / TEST (Antigravity) (pull_request) Failing after 33s
2026-07-20 12:06:21 +08:00
Jeffery 3631bf3592 chore(ci): 啟用建問題模式
CI / TEST (Codex) (pull_request) Successful in 28s
CI / TEST (Claude) (pull_request) Successful in 28s
CI / TEST (Antigravity) (pull_request) Failing after 33s
node-actions/template: CI / BUILD (pull_request) Successful in 3s
2026-07-20 11:24:48 +08:00
Jeffery 91fff79f22 feat(建問題模式): 審查留言改發到 issue、跳過舊留言處理並回貼 PR 連結 2026-07-20 11:24:48 +08:00
ai-review-bot af6b9a197f chore: update ai-review findings [ai-review-bot][success] 2026-07-20 01:46:49 +00:00
Jeffery 8662e8ca80 docs(審查步驟編號): 依新順序重編步驟編號與說明
node-actions/template: CI / BUILD (pull_request) Successful in 5s
CI / TEST (Claude) (pull_request) Successful in 27s
CI / TEST (Codex) (pull_request) Successful in 31s
CI / TEST (Antigravity) (pull_request) Failing after 36s
2026-07-20 09:46:12 +08:00
Jeffery d751cee69d refactor(審查流程): 將舊留言標記移到偵測 AI 工具之前 2026-07-20 09:46:12 +08:00