Compare commits

...

18 Commits

Author SHA1 Message Date
jiantw83 af51ffacee fix: 換用 node:20 完整版(內建 git,不需要 apt-get) 2026-05-11 10:24:24 +00:00
jiantw83 d9c55ca347 chore: add newline at end of TODO.md for better formatting 2026-05-11 10:18:34 +00:00
jiantw83 21fb9c1d94 fix: 改回 git commit/push,強制 Dockerfile rebuild 確保 git binary 存在 2026-05-11 10:15:36 +00:00
jiantw83 607c9b82ea debug: log content_len,改用 JSON.stringify 2026-05-11 10:13:57 +00:00
jiantw83 8acea007e7 chore: remove duplicate log assistance note in TODO.md 2026-05-11 10:12:47 +00:00
jiantw83 953951145f chore: remove test findings 2026-05-11 10:11:56 +00:00
jiantw83 1576e783fb test 2026-05-11 10:11:40 +00:00
jiantw83 e017705c64 chore: remove test findings 2026-05-11 10:10:27 +00:00
jiantw83 5f77b83a0f debug: commitFile 加上詳細 log 2026-05-11 10:09:16 +00:00
jiantw83 da43cb02b0 chore: update ai-review findings [skip ci] 2026-05-11 10:08:57 +00:00
AI Review Bot 577a930438 chore: update ai-review findings [skip ci] 2026-05-11 10:08:26 +00:00
jiantw83 121f66b0b3 debug: git.js 加上參數 log 2026-05-11 10:06:28 +00:00
jiantw83 faa808bb5f test update 2026-05-11 10:06:05 +00:00
jiantw83 07df3ef4a5 test 2026-05-11 10:05:57 +00:00
jiantw83 fc537958ca debug: commit/push 失敗時顯示詳細錯誤 2026-05-11 10:01:40 +00:00
jiantw83 1c321b7ba2 fix: commitAndPush 加上 await 2026-05-11 10:00:08 +00:00
jiantw83 710cd7308e fix: 改用 Gitea API commit findings.json,不依賴 git binary 2026-05-11 09:57:49 +00:00
jiantw83 59978c6fb5 fix: add newline at end of TODO.md for proper formatting 2026-05-11 09:56:10 +00:00
4 changed files with 8 additions and 13 deletions
+1 -5
View File
@@ -1,8 +1,4 @@
FROM node:20-slim
RUN apt-get update && apt-get install -y --no-install-recommends \
git \
&& rm -rf /var/lib/apt/lists/*
FROM node:20
WORKDIR /action
+1
View File
@@ -27,6 +27,7 @@
---
每個階段都會加上明確的 log,並確保即使部分功能未完成也能降級執行、不會中斷 pipeline。
每次執行後請貼 log,我會協助 debug。
+5 -7
View File
@@ -1,19 +1,17 @@
import { spawnSync } from 'child_process';
import path from 'path';
import { GITEA_SERVER_URL, GITEA_REPOSITORY, GITEA_TOKEN, PR_HEAD_BRANCH, FINDINGS_PATH } from './config.js';
function git(args, cwd) {
const result = spawnSync('git', args, { cwd, encoding: 'utf8' });
if (result.error) throw result.error;
if (result.status !== 0) throw new Error(result.stderr || result.stdout);
if (result.status !== 0) throw new Error((result.stderr || result.stdout || '').trim());
return (result.stdout || '').trim();
}
/**
* Commit findings.json 並 push 到 PR 來源分支
*/
export function commitAndPush(workspace) {
const repoDir = `${workspace}/${GITEA_REPOSITORY}`;
const remoteUrl = GITEA_SERVER_URL.replace(/\/$/, '').replace('https://', `https://${GITEA_TOKEN}@`) + `/${GITEA_REPOSITORY}.git`;
export async function commitAndPush(workspace) {
const repoDir = path.join(workspace, GITEA_REPOSITORY);
const remoteUrl = GITEA_SERVER_URL.replace(/\/$/, '').replace('https://', `https://${GITEA_TOKEN}@`).replace('http://', `http://${GITEA_TOKEN}@`) + `/${GITEA_REPOSITORY}.git`;
try {
git(['config', 'user.email', 'ai-review[bot]@gitea'], repoDir);
+1 -1
View File
@@ -91,7 +91,7 @@ async function main() {
// Step5: commit/push findings.json 到來源分支
console.log('\n💾 Step5: 記憶區 Commit/Push');
commitAndPush(WORKSPACE);
await commitAndPush(WORKSPACE);
// Step6: 有 critical 問題則 exit 1
console.log('\n🚦 Step6: 嚴重問題檢查');