develop
master
執行 /jsc:doc-funcs 文件化流程的完整成果:統一日誌輸出格式、補齊指令檔逐行註解、重建 README,並將先前未進版控的 src/logger.js、src/version.js 納入追蹤。另新增兩項行為:
/jsc:doc-funcs
src/logger.js
src/version.js
0.0.1
0.0.1-beta.1
sha
${{ gitea.sha }}
GITHUB_SHA
is_beta
v
v1.2.3
value
[時間][階段][等級]: 訊息
[階段][等級][時間]: 訊息
階段
等級
時間
yyyy/MM/dd HH:mm:ss
readme.md
README.md
dockerfile
action.yml
image: dockerfile
format()
parse()
src/index.js
findLatestVersion()
git()
readSha()
findVersionAtCommit()
entrypoint.sh
node --check
sh -n entrypoint.sh
1.2.4-beta.3
1.2.4
1.2.4-beta.4
v0.0.1
0.0.2
🤖 Generated with Claude Code
- logger.js format() 組字順序改為階段在前、等級居中、時間在後(Asia/Taipei) - entrypoint.sh 啟動訊息改用新格式並更新標頭時間 - action.yml 新增用途/更新時間標頭與逐行繁中註解,設定值不變 - dockerfile 檔名維持小寫並與 action.yml 的 image 引用一致 - 新增 src/logger.js、src/version.js 模組與完整 JSDoc;重建 README.md Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
No dependencies set.
The note is not visible to the blocked user.
變更摘要
執行
/jsc:doc-funcs文件化流程的完整成果:統一日誌輸出格式、補齊指令檔逐行註解、重建 README,並將先前未進版控的src/logger.js、src/version.js納入追蹤。另新增兩項行為:0.0.1(beta 為0.0.1-beta.1)作為預設值繼續輸出,不再以未捕捉例外崩潰。sha(建議傳入${{ gitea.sha }},未提供時自動改用GITHUB_SHA);該 commit 已有符合格式的版號 tag 時直接輸出該 tag 內容(多個取最大、忽略is_beta),不再計算下一版;sha 無效時輸出 WRN 後改走一般計算流程。v前綴(如v1.2.3),解析時只取v之後的版本號;輸出的value一律不帶前綴。影響範圍
[時間][階段][等級]: 訊息改為[階段][等級][時間]: 訊息(階段選填、等級為 INF/WRN/ERR/TRC/DBG、時間為 Asia/Taipei 的yyyy/MM/dd HH:mm:ss)。版號計算邏輯與 action 輸出value完全不變。readme.md→README.md;容器建置檔定案為小寫dockerfile,與action.yml的image: dockerfile引用一致。重點檔案
src/logger.jsformat()組字順序改為階段在前;全模組 JSDoc 與範例同步更新(新進版控)src/version.jsparse()接受小寫v前綴src/index.jsfindLatestVersion()讀 tag 失敗時輸出 ERR+WRN 後回傳 null(回退起始版號);git()的 stderr 改為擷取、錯誤詳情摺疊為單行併入統一格式訊息;新增readSha()與findVersionAtCommit(),main() 先做已標記檢查再計算entrypoint.shaction.ymlsha;其餘設定值不變dockerfileREADME.md驗證
node --check三個 JS 模組、sh -n entrypoint.sh、YAML 解析全部通過。1.2.4-beta.3→1.2.4(轉正式)、→1.2.4-beta.4(beta 續號)、非法is_beta以 exit 1 結束,日誌皆為新格式。GITHUB_SHA回退來源、同 commit 多 tag 取最大、皆空略過檢查。風險與注意事項
0.0.1且 exit 0:若正式環境忘了 checkout,job 不會失敗,後續步驟可能拿0.0.1打 tag;ERR/WRN 訊息會留在 log 供辨識。v0.0.1tag:v 前綴支援後可正常識別(該 commit 的已標記檢查會輸出0.0.1、下一版為0.0.2)。entrypoint.sh啟動訊息中的時間為寫檔時的固定字串(非執行當下時間),檔內已註解標註。🤖 Generated with Claude Code