mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-09 03:46:16 -08:00
docs(refactor): [DOC-10] plan GitHub CI and release automation
This commit is contained in:
1 parent
21fd40ec07
commit
a9197f59b1
10 files changed
+212
-7
No files matched your search
@@ -26,6 +26,9 @@ complete the three review rounds and close blocking findings before candidate pu
|
||||
Connected Chrome interaction checks complement committed automated browser tests; neither
|
||||
connection availability nor mocks replace actual playback or required device evidence.
|
||||
Each review fix remains a separate task and commit. Revalidate changed candidate contents.
|
||||
The user explicitly includes GitHub CI/CD modernization in this refactor.
|
||||
Follow [refactor/github-ci-cd.md](refactor/github-ci-cd.md) for PR checks, regression matrices,
|
||||
artifacts, Pages and npm workflows. Distinguish local configuration from verified remote runs.
|
||||
|
||||
## Project Summary
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
| [docs 页面与编辑器测试](docs-browser-testing.md) | 复用已有 HTML、加载版本、隔离状态和补强文档 smoke |
|
||||
| [多轮复盘与 npm 准入](release-reviews.md) | Chrome 验证分工、三轮全局复盘、问题闭环和候选发布门槛 |
|
||||
| [工具链与发布](toolchain-release.md) | TypeScript、Bun、构建、版本管理和发布回退 |
|
||||
| [GitHub CI/CD](github-ci-cd.md) | PR/兼容矩阵、构建报告、Pages、npm 发布及远端准入验证 |
|
||||
| [AI 协作流程](ai-workflow.md) | AI 接续工作、任务边界、验证、记录和交接模板 |
|
||||
| [架构决策](decisions.md) | 已选方向、待验证方案及被拒绝方案 |
|
||||
| [进度与证据](progress.md) | 本次会话结果、阻塞、下一步;不重复维护每个任务状态 |
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
# DOC-10 记录 GitHub CI/CD 优化范围
|
||||
|
||||
- 日期:2026-09-10;分支:`codex/compatible-modernization`。
|
||||
- 基线提交:`21fd40ec`。
|
||||
- 提交主题:`docs(refactor): [DOC-10] plan GitHub CI and release automation`。
|
||||
- 用户要求:优化增强 GitHub CI/CD,并记入重构文档。
|
||||
|
||||
## 交付
|
||||
|
||||
静态核对唯一 nodejs.yml、package.json 和构建流程,记录 master-only、自动修复 lint、单 job 构建与 Pages force push 耦合等现状。新增 github-ci-cd.md,覆盖 PR/回归矩阵、缓存/并发/超时/报告、权限、候选 artifact、Pages、npm 分包发布和远端验收。
|
||||
|
||||
补充 ENG-02,新增 CI-01/02/03/04 待办并将 CI-04 接入 REVIEW-03。新增 DOC-10 完成状态;原 203 项任务的 ID/范围/状态保留。共 208 项任务:10 项规划完成,198 项待办。没有修改 workflow、生产代码或外部配置。
|
||||
|
||||
## 验证与限制
|
||||
|
||||
计划生成与同步、依赖无环、22 包覆盖、本地链接检查通过;专项检查新 CI 前置进入候选/正式发布,原真机和复盘门槛保留。Git 差异及暂存范围检查通过,独立提交后核实日志与工作区。
|
||||
|
||||
参考官方 GitHub Actions/Pages 与 npm trusted publishing 文档,选定工具版本在实施时再次核对。未运行 GitHub Actions、构建或浏览器测试,没有创建定时任务、推送、部署、修改信任配置或发布 npm。
|
||||
|
||||
## 后续与回退
|
||||
|
||||
下一项仍为 BASE-01;ENG/CI 按依赖逐步实施,远端未知项单独登记。可回退本提交恢复之前计划,不影响现有 CI/CD。
|
||||
@@ -0,0 +1,62 @@
|
||||
# GitHub CI/CD 优化与验收
|
||||
|
||||
2026-09-10 用户明确要求在本次重构中优化和增强 GitHub CI/CD。范围包含仓库检查、测试矩阵、构建产物、文档站部署和 npm 发布准备,并持续维护脚本文档及故障处理指南。本文是待实施规范,不代表 workflows 已更新或远端运行成功。
|
||||
|
||||
## 当前源码基线
|
||||
|
||||
[nodejs.yml](../.github/workflows/nodejs.yml) 是当前唯一 workflow:仅 push master 触发,Ubuntu + Node 20.x,checkout/setup-node 使用 v2;单一 job 执行 yarn 安装、两组 Node 测试、lint 和 build:all,再提交 docs、subtree split 并 force push gh-pages。
|
||||
|
||||
[package.json](../package.json) 中 lint 使用 --fix,build:all 又包含 lint;当前 workflow 没有 PR 触发、真实浏览器矩阵、类型消费者/tarball 检查、显式权限、并发取消、超时或报告上传。上述是文件检查结果,尚未核对 GitHub 的实际历史运行、Pages 配置、分支保护、环境规则或 npm 账号配置。旧流程的部署目标与访问路径必须先核实,不能仅改 YAML 就宣称迁移完成。
|
||||
|
||||
## 目标流水线
|
||||
|
||||
| 流程 | 触发和范围 | 交付/门槛 |
|
||||
| --- | --- | --- |
|
||||
| PR 和主线 CI | PR、主线及重构分支的相关提交;支持人工重跑 | 固定安装、只读 lint、类型、单元/生命周期、影响范围内的浏览器和产物测试、计划/文档检查 |
|
||||
| 完整兼容回归 | 共享核心/构建变更、候选准备、定期或手动执行 | 全生态构建、新旧组合、所需 Node/TS/浏览器/系统矩阵、docs 编辑器及 HTML、性能/资源证据 |
|
||||
| 候选产物准备 | 明确源码 ref 与包/版本范围的手动或受控调用 | 构建、pack、隔离消费者、完整性清单及报告;不发布 npm |
|
||||
| 文档站部署 | 仅受信任主线或明确发布操作,依赖对应 CI | 部署已验证 Pages artifact,保留域名/CNAME、旧 URL、语言页和 compiled 路径,发布后探测 |
|
||||
| npm 候选/正式发布 | 明确包批次、registry、版本、tag 和已批准的候选内容 | 三轮复盘与真实环境门槛通过后发布准确 tarball,读回版本/integrity并记录回退 |
|
||||
|
||||
ENG-02 先建立只读 PR 检查和部署隔离框架,后续 CI 任务逐步接入已完成的测试基础;不能等全套回归齐备才给 PR 加基础检查。定期 workflow 是拟实现仓库能力,本文不创建 Codex 定时任务,也不即时启用远程作业。
|
||||
|
||||
## CI 的可靠性与运行成本
|
||||
|
||||
- Node/TS/包管理器版本来自 ENG-01、BASE-08 和 Bun 试点;最低消费者兼容与构建所需运行时分别验证,不因 Actions 升级静默提高消费者要求。
|
||||
- 覆盖 Linux 与 Windows 的关键脚本;浏览器覆盖 Chromium/Firefox/WebKit 和有需要的正式 Chrome。真机、Cast 等证据仍使用环境矩阵,不将 hosted runner 通过当作真机通过。
|
||||
- 安装使用选定包管理器的锁定模式;缓存按 OS、运行时、包管理器及锁文件隔离,浏览器缓存还绑定测试工具版本。禁止无关 PR 缓存/产物进入有发布权限的任务。
|
||||
- 快速检查依据依赖图而非简单路径过滤;共享核心/构建/锁文件变化扩大检查,影响不确定时完整回归。文档单改可缩小范围,但 required 汇总检查必须给出真实结果,不能将失败/取消误报成功或留下永久 pending。
|
||||
- PR 同分支的新提交取消过期检查;发布与部署按目标串行,不能取消一半已发生写入的发布。设置任务超时、合理并行/分片和报告保留期,避免重复 build:all 或重复 lint。
|
||||
- 只读检查不改源码;显式构建在指定输出目录生成产物。记录生成漂移,确保 build/test 不包含提交、推送或部署副作用。
|
||||
- 报告包含 commit、运行链接、工具版本、测试计数/跳过/重试、逐包结果、覆盖率、大小和性能;失败也上传可获得的日志、截图和 trace。大媒体/录像不提交源码,报告避免凭据泄露。
|
||||
- YAML/actionlint 等静态检查与真实 Actions 执行分别留证。至少演练正常 PR、失败测试、文档单改、核心变更及发布 dry run;旧问题按 ENG-10 台账处理,不用 continue-on-error 掩盖发布相关失败。
|
||||
|
||||
## 权限和第三方 Actions
|
||||
|
||||
普通 CI 默认只读 contents,fork PR 不获取发布 secrets;不使用有写权限的 pull_request_target 执行外部 PR 代码。部署/发布权限仅授予相应 job。固定第三方 Actions 的完整提交 SHA 并注释版本,建立可审阅的升级流程,具体版本在实施时验证 runner 兼容性。GitHub 建议参见 [安全使用参考](https://docs.github.com/en/actions/reference/security/secure-use)。
|
||||
|
||||
required checks、环境审批、Pages source、npm trusted publisher 等是外部配置:记录现状、目标、所需权限和完成证据。仓库代码可先实现并提交;缺少远端配置时不得声称已启用发布能力。工作流配置优化不等于本次已经授权推送、部署或 publish;按已有发布授权规则操作,不重复询问常规本地修改。
|
||||
|
||||
## Pages 与 npm 分发
|
||||
|
||||
Pages 优先评估官方 artifact 部署流程,替代 CI 内提交/force push gh-pages 的耦合;先核对当前站点来源、域名、静态目录及保留文件,迁移前准备恢复旧部署方式的步骤。具体权限及 artifact 约束依据 [GitHub Pages workflow 文档](https://docs.github.com/en/pages/getting-started-with-github-pages/using-custom-workflows-with-github-pages)。尚未迁移远端设置时,旧站点仍须可恢复。
|
||||
|
||||
npm 保持 Lerna independent 的分包版本,不自动统一版本或抬高 major。优先评估 [npm trusted publishing](https://docs.npmjs.com/trusted-publishers/) 的 OIDC 和 provenance;逐包核对支持环境、CLI 版本及信任配置,不能因支持 OIDC 就假定本仓库已配置。发布 CLI 环境要求不自动改变消费者最低 Node 要求。
|
||||
|
||||
发布只接收明确受信任来源的候选 artifact,并核对源码 SHA、workflow run、包/版本/registry/tag 和 tarball integrity。不能执行任意外部 URL 提供的代码或仅凭 artifact 名称信任内容。避免发布阶段生命周期脚本悄悄重建包;若内容改变,重新验证。dry run 不能证明 npm 权限、OIDC 或真实发布成功。
|
||||
|
||||
重跑发布先读 registry:相同版本存在时核对 integrity;内容不符则停止,禁止覆盖或默认 unpublish。分包发布部分成功时记录已成功包、失败包及 tag 状态,按兼容依赖顺序恢复;不盲目重发全部。候选 tag 升为正式前重核 REVIEW 和反馈修复证据。发布/部署后分别验证 npm 安装与站点关键路径,并记录分包/tag/站点回退方案。
|
||||
|
||||
## 任务归属
|
||||
|
||||
| 任务 | 交付 |
|
||||
| --- | --- |
|
||||
| ENG-02 | 只读脚本、PR/主线检查及部署隔离基础 |
|
||||
| ENG-05/07/08/09/10 | 浏览器、tarball、覆盖/性能、影响图、历史失败的可调用检查 |
|
||||
| CI-01 | 完整回归矩阵、缓存/并发/超时、稳定汇总检查和持久报告 |
|
||||
| CI-02 | Pages artifact 部署配置、路径保留、预检和恢复指南;远端切换状态明确 |
|
||||
| CI-03 | npm 分包候选准备/发布工作流、信任配置清单、artifact 校验及部分失败恢复 |
|
||||
| CI-04 | 流水线静态/干净环境/真实 PR 检查证据、dry run 与远端准入状态验收 |
|
||||
| REVIEW-03、REL-05/06 | 发布前核对 CI-04;实际发布和部署按明确授权执行,读回真实结果 |
|
||||
|
||||
CI-04 的仓库实现与远端配置证据分别报告。真实运行或必要配置尚未核实则该验收保持未完成,仍可继续其他独立本地任务;第三轮“发布就绪”不能绕过此缺口。
|
||||
+15
-4
@@ -2,9 +2,9 @@
|
||||
|
||||
> 由 tasks.json 生成。请修改数据后运行 `node refactor/scripts/plan.mjs --write`,不要手改本表。
|
||||
|
||||
基线:`40fcda6a37d0049d42e49c1e64e70d4fd9ba5f7f`。总任务 203 项,范围 22 个包及工作区/示例。
|
||||
基线:`40fcda6a37d0049d42e49c1e64e70d4fd9ba5f7f`。总任务 208 项,范围 22 个包及工作区/示例。
|
||||
|
||||
状态:todo 194 / doing 0 / blocked 0 / done 9 / deferred 0。风险 L/M/H 表示兼容风险,不表示工期。
|
||||
状态:todo 198 / doing 0 / blocked 0 / done 10 / deferred 0。风险 L/M/H 表示兼容风险,不表示工期。
|
||||
|
||||
前置依赖是启动条件;验收是完成条件。任务可以继续拆分,但不能复用或悄悄删除旧 ID。
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
| DOC-07 | workspace<br>复审并优化计划顺序和执行门槛 | DOC-06 | 依赖优化、执行门槛规范、测试/发布补充和审查记录 | 依赖与覆盖校验、专项执行顺序断言通过;任务范围完整并独立提交 | L | done |
|
||||
| DOC-08 | workspace<br>记录 Chrome 验证及多轮 npm 发布复盘 | DOC-07 | 浏览器分工、三轮复盘规范、发布依赖与接续文档 | 计划和发布依赖检查通过;独立提交 DOC-08,连接可用不冒充测试通过 | L | done |
|
||||
| DOC-09 | workspace<br>记录 docs HTML 与在线编辑器测试入口 | DOC-08 | 页面/加载方式、状态隔离、行为断言与既有任务映射 | 源码清点和计划检查通过,独立提交 DOC-09;不把页面存在当作测试通过 | L | done |
|
||||
| DOC-10 | workspace<br>记录 GitHub CI/CD 增强范围与验收 | DOC-09 | CI/CD 规范、四项实施任务与发布依赖 | 现有 workflow 核对、计划检查通过并独立提交;不冒充远端执行完成 | L | done |
|
||||
|
||||
## 1 基线
|
||||
|
||||
@@ -69,7 +70,7 @@
|
||||
| ID | 范围 / 步骤 | 前置依赖 | 交付物 | 验收条件 | 风险 | 状态 |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| ENG-01 | workspace<br>固定 Node、包管理器与依赖 | BASE-01 | 版本 pin、唯一锁文件、安装说明 | 干净环境可复现,最低 Node 与构建依赖一致,未夹带全量升级 | M | todo |
|
||||
| ENG-02 | workspace<br>拆分只读检查并建立 PR CI | ENG-01 | lint/lint:fix、PR 与主线检查、独立部署任务 | 仓库内检查可执行且不改源码、不发布;required checks 的外部设置状态列入发布台账,不阻塞本地框架建设 | M | todo |
|
||||
| ENG-02 | workspace<br>拆分只读检查并建立 PR CI | ENG-01 | lint/lint:fix、PR 与主线检查、独立部署任务;遵循 github-ci-cd.md,PR/重构分支触发、最小权限及 workflow 静态检查 | 仓库内检查可执行且不改源码、不发布;required checks 的外部设置状态列入发布台账,不阻塞本地框架建设 | M | todo |
|
||||
| ENG-03 | workspace<br>建立公共行为与单元测试入口 | ENG-02, BASE-03 | 保留现有 node:test,测试目录/夹具/统一入口 | 已有 19 项回归保留,旧版与候选可用同一夹具运行 | M | todo |
|
||||
| ENG-04 | workspace<br>建立类型测试基础 | ENG-02, BASE-05 | 根与分包 tsconfig、显式 TS 依赖、正反例测试 | 核心/试点与迁移模块严格检查,未迁移第三方/包历史问题独立台账;明确最低/当前 TS 和各环境类型 | M | todo |
|
||||
| ENG-05 | workspace<br>建立真实浏览器测试服务 | ENG-03, BASE-04, BASE-08 | Playwright projects、本地 Range/失败媒体服务;复用 docs 页面/样本的状态隔离、错误采集与候选资源映射 | Chromium/Firefox/WebKit 的基础播放 smoke 和报告可执行;以媒体状态断言判定通过,区分轻量用例与真实编辑器交互 | M | todo |
|
||||
@@ -79,6 +80,15 @@
|
||||
| ENG-09 | workspace<br>建立全包依赖影响和文档检查 | ENG-07, DOC-04 | 共享核心/构建影响映射、文档及每任务完成提交的 Git 审计接入 | 核心变化触发必需生态检查;原有 DOC-01 至 04 基线例外明确,后续 done 任务不能缺失独立 commit | M | todo |
|
||||
| ENG-10 | workspace<br>建立历史失败分级和测试可靠性规则 | ENG-03, ENG-04, ENG-05, ENG-07, BASE-07 | 历史失败 ID/环境/旧版复现/负责修复任务、逐模块门槛、受控等待与 trace/retry 规则 | 不靠全局忽略或无理由 skip 隐藏问题,新增回归阻止交付,设备缺口和偶发失败单独可见 | M | todo |
|
||||
|
||||
## 2.2 GitHub CI/CD
|
||||
|
||||
| ID | 范围 / 步骤 | 前置依赖 | 交付物 | 验收条件 | 风险 | 状态 |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| CI-01 | workspace<br>增强兼容矩阵、并发缓存与 CI 报告 | DOC-10, ENG-08, ENG-09, ENG-10 | OS/Node/TS/浏览器与影响范围矩阵、缓存、超时、汇总检查和 artifact 报告 | 固定安装、失败/取消不误报、核心影响全生态;检查只读,失败证据可追溯 | H | todo |
|
||||
| CI-02 | workspace<br>分离并改进 GitHub Pages 部署 | DOC-10, ENG-02, SITE-03 | Pages artifact 部署配置、旧路径/域名核对、预检和迁移恢复指南 | 部署只取受信任已验证产物;本地实现可验收,远端 source/环境和实际部署状态单独登记 | H | todo |
|
||||
| CI-03 | workspace<br>建立 npm 分包候选与发布工作流 | DOC-10, CI-01, REL-08, REL-04 | 候选准备、精确 artifact 发布配置、OIDC 评估、版本/tag/registry 预检和部分失败恢复 | 不自动发布;明确逐包信任前置和 dry run 限制,不能重建未验证内容或重发冲突版本 | H | todo |
|
||||
| CI-04 | workspace<br>验收 GitHub 流水线与远端发布准入 | CI-01, CI-02, CI-03, SITE-06 | 静态/干净环境检查、真实 PR 正反例、候选 dry run、required checks/Pages/npm 必需配置状态及运维指南 | 必要 Actions 证据和远端配置核对齐全;缺失保持未完成,真实 publish/deploy 仍在授权发布步骤执行 | H | todo |
|
||||
|
||||
## 2.1 早期试点
|
||||
|
||||
| ID | 范围 / 步骤 | 前置依赖 | 交付物 | 验收条件 | 风险 | 状态 |
|
||||
@@ -383,7 +393,7 @@
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| REVIEW-01 | workspace<br>第一轮全项目架构与兼容性复盘 | REL-02, CORE-22, SITE-04, MOD-05, DOC-08 | 22 包结构、类型、旧 API/路径、测试盲区和维护文档的逐包报告 | 本轮阻断项由独立修复任务关闭并复测;环境缺口转交下一轮,不宣称已发布就绪 | H | todo |
|
||||
| REVIEW-02 | workspace<br>第二轮真实浏览器与生态集成复盘 | REVIEW-01, REL-03 | Chrome 交互、自动浏览器、新旧组合、真机/SDK/性能/资源的全范围报告 | 所需环境证据齐全,前轮修复再次核对;本轮阻断项关闭,无关 mock 不替代真实验收 | H | todo |
|
||||
| REVIEW-03 | workspace<br>第三轮 npm 候选内容与发布准备复盘 | REVIEW-02, REL-04 | 实际候选 integrity、干净安装构建/消费者、入口/许可/版本/tag/回退及前轮证据汇总 | 最终候选完整检查通过,发布阻断项为零;准备可审阅的批次报告,不自动执行 publish | H | todo |
|
||||
| REVIEW-03 | workspace<br>第三轮 npm 候选内容与发布准备复盘 | REVIEW-02, REL-04, CI-04 | 实际候选 integrity、干净安装构建/消费者、入口/许可/版本/tag/回退及前轮证据汇总 | 最终候选完整检查通过,发布阻断项为零;准备可审阅的批次报告,不自动执行 publish | H | todo |
|
||||
|
||||
## 完成证据与阻塞
|
||||
|
||||
@@ -396,3 +406,4 @@
|
||||
- DOC-07: [记录](changes/2026-09-10-DOC-07-plan-review.md)
|
||||
- DOC-08: [记录](changes/2026-09-10-DOC-08-browser-and-release-reviews.md)
|
||||
- DOC-09: [记录](changes/2026-09-10-DOC-09-docs-test-surfaces.md)
|
||||
- DOC-10: [记录](changes/2026-09-10-DOC-10-github-ci-cd.md)
|
||||
@@ -1,6 +1,12 @@
|
||||
# 进度与证据
|
||||
|
||||
## 当前阶段:DOC-09 docs 测试入口记录
|
||||
## 当前阶段:DOC-10 GitHub CI/CD 规划
|
||||
|
||||
2026-09-10,用户明确纳入 GitHub CI/CD 优化。已核对现有 workflow 源码,新增 CI-01 至 CI-04 并接入第三轮发布复盘,文档见 [CI/CD 规范](github-ci-cd.md) 和 [DOC-10 记录](changes/2026-09-10-DOC-10-github-ci-cd.md)。现有 208 项任务:10 项规划完成、198 项待办;生产重构和 CI 改造均未开始。
|
||||
|
||||
计划/链接/依赖和 Git 差异检查通过;未修改 workflow、执行远端作业或发布。DOC-09 提交为 `21fd40ec`,本轮独立提交 DOC-10。下一项仍为 BASE-01。
|
||||
|
||||
## 2026-09-10:DOC-09 docs 测试入口记录
|
||||
|
||||
2026-09-10,将现有 HTML/Monaco 编辑器纳入真实测试方案,补充已有实施任务的具体要求。现有 203 项任务:9 项规划完成、194 项待办;生产重构与浏览器验收尚未开始。DOC-08 提交为 `3af9becf`。
|
||||
|
||||
|
||||
@@ -44,6 +44,8 @@
|
||||
|
||||
## 发布关系
|
||||
|
||||
REVIEW-03 还依赖 CI-04,核对 [GitHub CI/CD](github-ci-cd.md) 的真实检查结果、候选来源和必要远端配置。只有 YAML 或本地 dry run 通过,不能声称 npm 发布权限及正式工作流已验证。
|
||||
|
||||
REVIEW-01 -> REVIEW-02 -> REVIEW-03 -> REL-05(经授权候选发布)-> REL-06(经授权正式发布)。REL-03 的真机验收与 REL-04 的回退演练继续保留;复盘不替代它们。代码迁移完成后仍需完成这些门槛。
|
||||
|
||||
用户在复盘后审阅具体发布批次:包/版本、目标 registry/tag、兼容结论、候选 integrity、剩余非阻断项和回退方法。表达将来发布到 npm 的目标不等同当前执行 publish;可以自主完成本地准备与复盘。
|
||||
|
||||
+96
-2
@@ -165,6 +165,24 @@
|
||||
"changes/2026-09-10-DOC-09-docs-test-surfaces.md"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "DOC-10",
|
||||
"phase": "0 规划",
|
||||
"title": "记录 GitHub CI/CD 增强范围与验收",
|
||||
"scope": [
|
||||
"workspace"
|
||||
],
|
||||
"dependsOn": [
|
||||
"DOC-09"
|
||||
],
|
||||
"status": "done",
|
||||
"risk": "L",
|
||||
"deliverable": "CI/CD 规范、四项实施任务与发布依赖",
|
||||
"acceptance": "现有 workflow 核对、计划检查通过并独立提交;不冒充远端执行完成",
|
||||
"evidence": [
|
||||
"changes/2026-09-10-DOC-10-github-ci-cd.md"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "BASE-01",
|
||||
"phase": "1 基线",
|
||||
@@ -324,7 +342,7 @@
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "M",
|
||||
"deliverable": "lint/lint:fix、PR 与主线检查、独立部署任务",
|
||||
"deliverable": "lint/lint:fix、PR 与主线检查、独立部署任务;遵循 github-ci-cd.md,PR/重构分支触发、最小权限及 workflow 静态检查",
|
||||
"acceptance": "仓库内检查可执行且不改源码、不发布;required checks 的外部设置状态列入发布台账,不阻塞本地框架建设",
|
||||
"evidence": []
|
||||
},
|
||||
@@ -469,6 +487,81 @@
|
||||
"deliverable": "历史失败 ID/环境/旧版复现/负责修复任务、逐模块门槛、受控等待与 trace/retry 规则",
|
||||
"acceptance": "不靠全局忽略或无理由 skip 隐藏问题,新增回归阻止交付,设备缺口和偶发失败单独可见"
|
||||
},
|
||||
{
|
||||
"id": "CI-01",
|
||||
"phase": "2.2 GitHub CI/CD",
|
||||
"title": "增强兼容矩阵、并发缓存与 CI 报告",
|
||||
"scope": [
|
||||
"workspace"
|
||||
],
|
||||
"dependsOn": [
|
||||
"DOC-10",
|
||||
"ENG-08",
|
||||
"ENG-09",
|
||||
"ENG-10"
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "H",
|
||||
"deliverable": "OS/Node/TS/浏览器与影响范围矩阵、缓存、超时、汇总检查和 artifact 报告",
|
||||
"acceptance": "固定安装、失败/取消不误报、核心影响全生态;检查只读,失败证据可追溯",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"id": "CI-02",
|
||||
"phase": "2.2 GitHub CI/CD",
|
||||
"title": "分离并改进 GitHub Pages 部署",
|
||||
"scope": [
|
||||
"workspace"
|
||||
],
|
||||
"dependsOn": [
|
||||
"DOC-10",
|
||||
"ENG-02",
|
||||
"SITE-03"
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "H",
|
||||
"deliverable": "Pages artifact 部署配置、旧路径/域名核对、预检和迁移恢复指南",
|
||||
"acceptance": "部署只取受信任已验证产物;本地实现可验收,远端 source/环境和实际部署状态单独登记",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"id": "CI-03",
|
||||
"phase": "2.2 GitHub CI/CD",
|
||||
"title": "建立 npm 分包候选与发布工作流",
|
||||
"scope": [
|
||||
"workspace"
|
||||
],
|
||||
"dependsOn": [
|
||||
"DOC-10",
|
||||
"CI-01",
|
||||
"REL-08",
|
||||
"REL-04"
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "H",
|
||||
"deliverable": "候选准备、精确 artifact 发布配置、OIDC 评估、版本/tag/registry 预检和部分失败恢复",
|
||||
"acceptance": "不自动发布;明确逐包信任前置和 dry run 限制,不能重建未验证内容或重发冲突版本",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"id": "CI-04",
|
||||
"phase": "2.2 GitHub CI/CD",
|
||||
"title": "验收 GitHub 流水线与远端发布准入",
|
||||
"scope": [
|
||||
"workspace"
|
||||
],
|
||||
"dependsOn": [
|
||||
"CI-01",
|
||||
"CI-02",
|
||||
"CI-03",
|
||||
"SITE-06"
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "H",
|
||||
"deliverable": "静态/干净环境检查、真实 PR 正反例、候选 dry run、required checks/Pages/npm 必需配置状态及运维指南",
|
||||
"acceptance": "必要 Actions 证据和远端配置核对齐全;缺失保持未完成,真实 publish/deploy 仍在授权发布步骤执行",
|
||||
"evidence": []
|
||||
},
|
||||
{
|
||||
"scope": [
|
||||
"artplayer-plugin-chapter"
|
||||
@@ -3537,7 +3630,8 @@
|
||||
],
|
||||
"dependsOn": [
|
||||
"REVIEW-02",
|
||||
"REL-04"
|
||||
"REL-04",
|
||||
"CI-04"
|
||||
],
|
||||
"status": "todo",
|
||||
"risk": "H",
|
||||
|
||||
@@ -50,6 +50,8 @@
|
||||
|
||||
## CI 分层
|
||||
|
||||
用户已明确要求增强 GitHub CI/CD,当前 workflow 问题、目标矩阵、报告和实现任务见 [GitHub CI/CD 规范](github-ci-cd.md)。本地测试通过、workflow 静态检查、真实 Actions 通过分别记录。
|
||||
|
||||
| 触发 | 内容 |
|
||||
| --- | --- |
|
||||
| 每次 PR | 固定安装、只读 lint、类型、受影响单元/生命周期、核心浏览器 smoke、受影响发布包检查 |
|
||||
|
||||
@@ -54,6 +54,8 @@ TypeScript 用于自有源码、检查与声明生成;Vite/Rollup 保留现有
|
||||
|
||||
## 发布流程
|
||||
|
||||
GitHub CI/CD 的优化属于本次重构范围,按 [CI/CD 规范](github-ci-cd.md) 分离 PR 检查、候选准备、Pages 部署与 npm 发布。新增 CI-01 至 CI-04 交付矩阵/报告、部署、分包发布准备及远端准入验收;第三轮复盘需核对这些结果。
|
||||
|
||||
实现完成后必须执行 [三轮全局复盘](release-reviews.md)(REVIEW-01/02/03),分别核对架构兼容、真实环境和最终 npm 候选内容。REL-05 依赖三轮通过;候选反馈修复后的正式发布重新核对受影响证据,不能直接复用旧候选的验收结果。
|
||||
|
||||
1. BASE-01 确定旧核心和插件的支持矩阵,登记 npm tarball integrity。起点 SHA 不能代替消费者产物基线。
|
||||
|
||||
Reference in new issue
Block a user