Skip to content

👷 ci: align released tooling and workspace validation - #85

Merged
zrr1999 merged 5 commits into
codex/offline-og-fontsfrom
codex/shared-tooling-validation
Oct 18, 2026
Merged

zrr1999 merged 5 commits into
codex/offline-og-fontsfrom
codex/shared-tooling-validation

Conversation

@zrr1999

@zrr1999 zrr1999 commented Oct 4, 2026 •

Copy link
Copy Markdown
Owner

动机

本地提交钩子仍使用旧版入口,与主线 PR 校验的 zendev v0.5.0 不一致;主页和幻灯片的构建也未执行已有 Astro 静态检查。完整网站构建与 Action 引用维护需要作为独立 CI 改动交付,避免混入博客功能修复。

解决方案

  • 将本地提交钩子升级到正式发布的 zendev v0.5.0,使用 zendev-message-check;两个 PR Action 固定到该版本对应的完整 SHA,并在行内保留 v0.5.0 注释。
  • 新增完整网站构建工作流:初始化静态资源子模块、安装锁定依赖,构建主页、博客和幻灯片。
  • 在构建与静态检查工作流中,将 prek-action 和 setup-vp 固定到已核实的完整提交 SHA,并保留对应版本注释。
  • 主页、幻灯片与博客一样,在生产构建前执行 astro check。
  • README 的干净安装入口统一为 vp install --frozen-lockfile。

说明

所属原生 stack 为 #91,直接基线是 #84。本 PR 集中承载 CI 与工具链维护,博客功能与字体回归测试分别由 #82、#84 交付。

GitHub 的完整构建提供可审阅、可在本地复现的全站验证入口,与现有 Cloudflare 构建有覆盖重叠;生产部署仍由 Cloudflare 执行。工作流保留既有 main 分支过滤、路径过滤和最小权限,原生 stack 的各层沿用 trunk 的 PR CI。

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
zrr-website-slides 37754c5 Commit Preview URL

Branch Preview URL
Oct 18 2026, 01:24 PM

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
zrr-website-blog 37754c5 Commit Preview URL

Branch Preview URL
Oct 18 2026, 01:26 PM

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
zrr-website-root 37754c5 Commit Preview URL

Branch Preview URL
Oct 18 2026, 01:27 PM

@morirun morirun left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

已审阅 #85 至 abe40c5。

阻塞项:

  • 无。

非阻塞:

  • policy-pr.yml 与 prek.toml 固定到 zendev 未打 tag 的提交 7d8bcbf(v0.4.0 之后)。建议在注释中写明对应版本(如 v0.4.0+7d8bcbf),等上游发布包含该修复的 tag 后改回 tag,方便 Renovate 跟踪。
  • 本 PR 未修改 lockfile,但继承自 #84 的 pnpm-lock.yaml 在 rebase 到 main 时需要一并处理。

核对:

  • zendev 7d8bcbf 的 .pre-commit-hooks.yaml 中 zendev-message-check 声明 stages: [commit-msg]。与 main 上 #89 新增的 default_install_hook_types / default_stages 合并时无冲突,且仍在 commit-msg 阶段运行。本地用 prek 验证:不合规的提交信息被拒,🐛 fix(blog): … 通过。
  • 在当前 main 上对 root、slides 运行 astro check:0 errors(root 有 1 条 execCommand 弃用提示);将整个 stack 合并到 main 后 vp run build 三站点通过。
  • README 改为 vp install --frozen-lockfile,与 AGENTS.md「统一用 Vite+」一致。
  • CI 全绿,PR 正文符合模板。

结论:

  • Approve。

@gitar-bot

gitar-bot Bot commented Oct 10, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

🟡 Medium risk · Updating shared PR/message validators and adding Astro checks could reject valid contributions or miss malformed messages, disrupting CI gating.

Aligns the commit hook and both PR actions to a pinned upstream commit using the supported zendev-message-check manifest, reuses the shared Markdown scanner while keeping the Chinese PR template contract, runs astro check before building the homepage and slides, and updates the README install command to vp install --frozen-lockfile. No issues found.

Review coverage

📋 Rules No rules evaluated

🧪 Functional validation Not enabled · Set up

Options

Auto-apply is off → Gitar will not commit updates to this branch.
Display: compact → Counting what did not apply, without listing it.

Comment with these commands to change the behavior for this request:

Auto-apply Compact
gitar auto-apply:on         
gitar display:verbose         

Important

Your trial ends in 3 days — upgrade now to keep code review, CI analysis, auto-apply, custom automations, and more.

Was this helpful? React with 👍 / 👎 | Gitar

@zrr1999 zrr1999 changed the title 👷 ci: align shared tooling and site validation 👷 ci: align released tooling and workspace validation Oct 18, 2026
@zrr1999
zrr1999 marked this pull request as ready for review October 18, 2026 13:09
@zrr1999
zrr1999 marked this pull request as draft October 18, 2026 13:20
@zrr1999
zrr1999 removed this pull request from stack #86 October 18, 2026 13:22
@zrr1999
zrr1999 added this pull request to stack #91 October 18, 2026 13:22
@sonarqubecloud

Copy link
Copy Markdown

@zrr1999
zrr1999 marked this pull request as ready for review October 18, 2026 13:29
@zrr1999
zrr1999 merged commit a40a458 into main Oct 18, 2026
13 of 15 checks passed
@zrr1999
zrr1999 deleted the codex/shared-tooling-validation branch October 18, 2026 13:31
zrr1999 added a commit that referenced this pull request Oct 18, 2026
## 动机

Egglog 系列第二、三篇的前篇链接使用相对路径,部署后会指向不存在的嵌套 URL。简历的 Typst 编译失败时,astro-typst
会返回空字符串,构建仍可能成功并生成空白简历。

## 解决方案

- 将两处前篇链接改为已发布的 `/posts/<slug>/` 路由。
- 在 Typst 的 SVG 后处理入口拒绝缺少 SVG 的输出,让编译失败明确中止构建。
- 报错保留文件路径;内联输入使用明确的来源名称,避免显示 `undefined`。

## 说明

本 PR 只包含博客链接与简历构建行为的修复,不改变简历正文、样式或 HTML 目标的文章渲染。

所属原生 stack 为 #91,顺序为 #82 → #84 → #85。完整网站构建工作流及 Action 固定引用在 #85 单独交付,现有
Cloudflare 构建继续验证三个站点。

---------

Co-authored-by: morirun <257760829+morirun@users.noreply.github.com>
zrr1999 added a commit that referenced this pull request Oct 18, 2026
## 动机

OG 图片构建会逐张请求 Google Fonts 的 CSS
和字体文件,网络或字体服务不可用时会导致博客构建失败。中文标题还需要可用的中文后备字体。

## 解决方案

- 从锁定的本地字体包读取 IBM Plex Mono 的普通与粗体,保持拉丁文字的现有字体。
- 使用本地思源黑体补充中文,按图片实际文本生成普通与粗体子集;源字体在进程内复用。
- 站点与文章 OG 模板共用离线加载入口,删除构建时的字体网络请求。
- 添加禁止网络请求的中英文 SVG、PNG 渲染测试,并在现有静态检查工作流中执行。

## 说明

所属原生 stack 为 #91,直接基线是 #82,后续为 #85。完整构建流水线在 #85 单独交付,本 PR 只接入本功能的回归测试。

字体与子集工具仅用于构建,不引入浏览器端字体请求。IBM Plex Mono 使用 latin
子集,其他字符可能使用后备字体;当前中文字体包体积较大,会增加依赖安装成本。

## 后续工作

评估只包含所需字重的中文字体包,并补充扩展拉丁字符的字体覆盖检查。

---------

Co-authored-by: morirun <257760829+morirun@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants