維護記錄#
完成的工作#
- 修改
scripts/gen-covers.ts,移除 SVG 封面中的方形與菱形元素:- 從 symbol 列表刪除
□ 與 ◇ - 刪除
patternRectangles 與 patternGrid 兩個圖案函數,並從 PATTERN_FNS 中移除
- 同步更新
scripts/__tests__/gen-covers.test.ts,移除對已刪除圖案的引用 - 運行
bun test scripts/__tests__/gen-covers.test.ts,29 個測試全部通過 ✅ - 合併自動修復流程到 deploy.yml:
- 改寫
.github/workflows/deploy.yml,把 gen-covers + format-markdown 併入 build job,在 hugo --minify 之前順序執行(gen-covers 先,format 後,一次提交無殘留) - 刪除獨立的
.github/workflows/format-markdown.yml 與 .github/workflows/gen-covers.yml scripts/git-commit-push.ts 加 git pull --rebase 兜底,避免併發 push 被拒- 移除 deploy build job 的
if: github.actor != 'github-actions[bot]'(該條件在 GITHUB_TOKEN push 場景下從未生效,是死代碼) - 新增
permissions: contents: write 與 workflow_dispatch 觸發器 - 效果:一次 push → 一個 bot commit → 部署的是修復後的內容(封面、格式化結果即時上線) ✅
遇到的問題#
- 最初計劃新建獨立的
auto-fix.yml workflow,但發現 GITHUB_TOKEN 推送的 commit 不會觸發新 workflow run,導致封面/格式化結果延遲一次 push 才上線 ⚠️- 解決方案:直接合併到
deploy.yml,在構建前完成修復,部署的就是修復後的內容
下次建議#
- 若後續想補充新圖案,可優先加入曲線/有機形態,進一步豐富封面視覺差異
- 如需進一步降低 bot commit 噪音,可考慮在
git-commit-push.ts 里加 git diff-index --quiet HEAD 檢查,有改動才 commit/push