Pages 发布、检查与回退

公开站点与本地应用

InsightCut 网站提供产品介绍、真实案例和文档。FastAPI / React 工作台仍在本机运行,端口为 2002 / 2001;发布网站不会部署用户数据库、媒体目录或模型凭证。

贡献到发布的路径

  1. master 建分支并提交 PR。外部贡献者可 Fork;第一次贡献的 CI 可能需要维护者批准运行。CI 批准与代码审查是两件事。
  2. 8 项必需检查全部通过,所有讨论解决后才能合并。管理员同样受保护;单维护者场景不要求另一个批准者,外部 PR 仍由维护者审查后合并。
  3. 合并后,CI 再检查实际的 master 提交,构建静态站并上传 pages-site
  4. Publish Pages 只接受本仓库、master、push 事件产生的成功 CI。门禁检查每一项 CI 均成功,以及提交仍为最新 master
  5. 仅下载该次 CI 的站点文件;发布前再次核对 build-info.json 中的 SHA 和当前 master。特权部署步骤不执行产物中的代码。
  6. 发布后自动读取公开首页、关键文档、品牌资产、截图、视频 Range 和 build-info.json,验证部署内容对应提交。

PR、失败或取消的 CI、手动调度的 CI、过期 master 运行都不能发布。Pages 运行串行处理,正在发布的运行不被中途取消。

仓库设置

本地验证

先安装 requirements-dev.lock 和前端锁定依赖。项目根目录:

python scripts/check_contribution.py
python scripts/test_pages_gate.py
python scripts/build_site.py
python scripts/check_site.py

前端目录:

npx playwright test --config=playwright.site.config.js

新增文档或素材须先 git add 才会进入构建。只复制 Git 登记的公开文件,不遍历用户数据目录;保留 /showcase/ 和原有 Markdown 对应的 .html 地址。

如何判断真的上线

Publish Pages 运行结果、公开网页和 build-info.json 为准。CI 通过、分支推送或旧站点返回 200 都不足以证明新版本已发布。

master 在部署前再次更新,旧运行会跳过或停止发布,等待新提交 CI 成功。网络或 Pages 平台故障可在 Actions 重跑对应 Publish Pages;门禁会重新验证原 CI 和最新 SHA,过期版本仍不会发布。

故障证据与回退

本轮验证记录(2026-09-13)