跳转到主要内容

CI 流水线

CI 在每次推送到 main 和每个拉取请求时运行。它使用智能作用域,当仅更改不相关区域时跳过昂贵的任务。

任务概览

任务目的运行时机
preflight文档范围,变更范围,密钥扫描,工作流审计,生产依赖审计始终;仅在非文档变更时进行基于 Node 的审计
docs-scope检测仅文档变更始终
changed-scope检测哪些区域发生了变更 (node/macos/android/windows)非文档变更
checkTypeScript 类型检查,Lint,格式化非文档,Node 变更
check-docsMarkdown Lint + 失效链接检查文档已变更
secrets检测泄漏的密钥始终
build-artifacts构建一次 dist,与 release-check 共享推送到 main,Node 变更
release-check验证 npm pack 内容构建后推送到 main
checksNode 测试 + PR 上的协议检查;推送时的 Bun 兼容性检查非文档,Node 变更
compat-node22支持的最低 Node 运行时版本推送到 main,Node 变更
checks-windowsWindows 特定测试非文档,Windows 相关变更
macosSwift Lint/构建/测试 + TS 测试包含 macOS 变更的 PR
androidGradle 构建 + 测试非文档,Android 变更

快速失败顺序

作业经过排序,以便廉价的检查在昂贵的检查运行之前失败:
  1. docs-scope + changed-scope + check + secrets (并行,优先运行廉价的门槛检查)
  2. PR:checks (Linux Node 测试拆分为 2 个分片), checks-windows, macos, android
  3. 推送到 mainbuild-artifacts + release-check + Bun 兼容性 + compat-node22
作用域逻辑位于 scripts/ci-changed-scope.mjs 中,并由 src/scripts/ci-changed-scope.test.ts 中的单元测试覆盖。 同一个共享的作用域模块还通过更窄的 changed-smoke 门控来驱动独立的 install-smoke 工作流,因此 Docker/install 冒烟测试仅针对 install、打包和容器相关的更改运行。

运行器

运行器任务
blacksmith-16vcpu-ubuntu-2404大多数 Linux 任务,包括作用域检测
blacksmith-32vcpu-windows-2025checks-windows
macos-latestmacos, ios

本地等效项

pnpm check          # types + lint + format
pnpm test           # vitest tests
pnpm check:docs     # docs format + lint + broken links
pnpm release:check  # validate npm pack

本页面源自 openclaw/openclaw,由 BeaversLab 翻译,遵循 MIT 协议 发布。
Last modified on March 27, 2026