维护记录

完成的工作

  • 修改 scripts/gen-covers.ts,移除 SVG 封面中的方形与菱形元素:
    • 从 symbol 列表删除
    • 删除 patternRectanglespatternGrid 两个图案函数,并从 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.tsgit pull --rebase 兜底,避免并发 push 被拒
    • 移除 deploy build job 的 if: github.actor != 'github-actions[bot]'(该条件在 GITHUB_TOKEN push 场景下从未生效,是死代码)
    • 新增 permissions: contents: writeworkflow_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