发布检查阶段
发布检查阶段¶
OpenClaw Release Checks 是最大的子工作流。它会一次性解析目标,并在可用时验证 umbrella 的共享包工件。直接调度或聚焦调度会在面向包或 Docker 的阶段需要时,准备其自身的 release-package-under-test 工件。
| 阶段 | 详情 |
|---|---|
| 发布目标 | 作业: Resolve target ref支撑工作流: 无 测试: 选定的 ref、可选的预期 Validation SHA、profile、具体的 release-check 组,以及聚焦的 live suite 过滤器。 重跑: 选择失败面对应的具体组。 |
| 包工件 | 作业: Prepare release package artifact支撑工作流: 无 测试: 验证 umbrella 的不可变包元组,或为直接/聚焦的 Release Checks 调度打包一个候选 tarball,然后将其暴露给下游面向包的检查。 重跑: 受影响的包、跨操作系统或 live/E2E 组。 |
| 安装冒烟 | 作业: Run install smoke支撑工作流: Install Smoke测试: 完整安装路径,包括复用 root Dockerfile 冒烟镜像、QR 包安装、root 和 gateway 的 Docker 冒烟、安装器 Docker 测试,以及 Bun 全局安装加上 CLI/local-agent/Gateway 运行时冒烟和建议性的仅 Bun 运行时冒烟(冻结目标除外)。 重跑: rerun_group=install-smoke。 |
| 跨操作系统 | 作业: cross_os_release_checks支撑工作流: OpenClaw Cross-OS Release Checks (Reusable)测试: 针对所选 provider 和 mode,在 Linux、Windows 和 macOS 上运行全新安装和升级通道,使用候选 tarball 加一个基线包。Linux、Windows 和 macOS 的 Gateway 安装与升级套件会门控 beta、stable 和完整发布,并记录通过/失败结论。 重跑: rerun_group=cross-os。 |
| 仓库与实时 E2E | 作业: Run repo/live E2E validation支撑工作流: OpenClaw Live And E2E Checks (Reusable)测试: 仓库 E2E、live cache、OpenAI websocket 流式传输、原生 live provider 和插件分片,以及由 release_profile 选择的基于 Docker 的 live model/backend/gateway 测试框架。运行条件: run_release_soak=true、release_profile=full 或聚焦的 rerun_group=live-e2e。重跑: rerun_group=live-e2e,可选带 live_suite_filter。 |
| Docker 发布路径 | 作业: Run Docker release-path validation支撑工作流: OpenClaw Live And E2E Checks (Reusable)测试: 针对共享包工件的发布路径 Docker 分块。 运行条件: run_release_soak=true、release_profile=full 或聚焦的 rerun_group=live-e2e。重跑: rerun_group=live-e2e。 |
| 包验收 | 作业: Run package acceptance支撑工作流: Package Acceptance测试: 针对同一 tarball 的离线插件包测试夹具、插件更新,以及已发布升级幸存者检查。标准 mock-OpenAI Telegram 包 E2E 在 beta all 且无 soak 时会被推迟;显式 package 和 soak 默认会选择它。阻塞式发布检查使用默认的最新已发布基线;soak 检查(run_release_soak=true)会一次性解析最新 stable 基线,并针对该基线运行已报告问题的升级测试夹具。重跑: rerun_group=package。 |
| 成熟度记分卡 | 作业: Render maturity scorecard release docs支撑工作流: maturity-scorecard.yml测试: 针对目标 ref 渲染建议性的成熟度记分卡文档。仅在传入 run_maturity_scorecard=true 时运行。重跑: 直接手动 rerun_group=qa 并带 run_maturity_scorecard=true。 |
| 阶段 | 详情 |
|---|---|
| QA 一致性 | 作业: Run QA Lab parity lane 和 Run QA Lab parity report支撑工作流: 直接作业 测试: 候选和基线智能体一致性包,然后是一致性报告。 重跑: rerun_group=qa-parity;直接手动子任务分发可能与 qa 聚合。 |
| QA 运行时一致性 | 作业: Verify QA Lab runtime-pair lanes支撑工作流: 直接作业 测试: 规范核心 openclaw/codex 泳道(pnpm openclaw qa suite --runtime-pair openclaw,codex --runtime-pair-lane core),以及当 run_release_soak=true 时的浸泡泳道。包括 OpenClaw 核心重启证明。发布验证器会强制校验已记录的泳道状态。重跑: rerun_group=qa-parity;直接手动子任务分发可能与 qa 聚合。 |
| QA 运行时工具覆盖 | 作业: Enforce QA Lab runtime tool coverage支撑工作流: 直接作业 测试: 在规范核心运行时配对泳道中检测 openclaw 与 codex 之间的动态工具漂移(pnpm openclaw qa coverage --tools),使用该泳道的输出。阻塞:此作业不可被建议性覆盖。重跑: rerun_group=qa-parity;直接手动子任务分发可能与 qa 聚合。 |
| QA 实时 Matrix | 作业: Run QA Live Matrix catalog支撑工作流: QA-Lab - All Lanes 可复用工作流测试: 通过 qa-live-shared 环境中的共享 Matrix 实时适配器运行目录派生的 YAML 场景,并分布在确定性分片上。重跑: rerun_group=qa-live 且 live_suite_filter=qa-live-matrix;直接手动子任务分发可能与 qa 聚合。 |
| QA 实时 Buzz | 作业: Run QA Lab live Buzz lane支撑工作流: QA-Lab - All Lanes 可复用工作流测试: 通过真实 Buzz 插件执行签名金丝雀和提及门控往返,使用专用的 Convex 租约身份和托管中继房间。 重跑: rerun_group=qa-live 且 live_suite_filter=qa-live-buzz;直接手动子任务分发可能与 qa 聚合。 |
| QA 实时 Telegram | 作业: Run QA Lab live Telegram lane支撑工作流: 受信任的 OpenClaw Release Telegram QA 分发测试: 使用 Convex CI 凭据租约的实时 Telegram QA。 重跑: rerun_group=qa-live;直接手动子任务分发可能与 qa 聚合。 |
| QA 实时 Discord | 作业: Run QA Lab live Discord lane支撑工作流: 直接作业,其记录状态由发布验证器强制校验 测试: 当 OPENCLAW_RELEASE_QA_DISCORD_LIVE_CI_ENABLED 启用时,使用 Convex CI 凭据租约的实时 Discord QA。重跑: rerun_group=qa-live 且 live_suite_filter=qa-live-discord。 |
| QA 实时 WhatsApp | 作业: Run QA Lab live WhatsApp lane支撑工作流: 直接作业,其记录状态由发布验证器强制校验 测试: 当 OPENCLAW_RELEASE_QA_WHATSAPP_LIVE_CI_ENABLED 启用时,使用 Convex CI 凭据租约的实时 WhatsApp QA。重跑: rerun_group=qa-live 且 live_suite_filter=qa-live-whatsapp。 |
| 阶段 | 详情 |
|---|---|
| QA 实时 Slack | 任务: Run QA Lab live Slack lane支撑工作流: 直接任务,其已记录状态由发布验证器强制执行 测试: 当 OPENCLAW_RELEASE_QA_SLACK_LIVE_CI_ENABLED 启用时,使用 Convex CI 凭证租约执行实时 Slack QA。重跑: rerun_group=qa-live 且 live_suite_filter=qa-live-slack。 |
| 发布验证器 | 任务: Verify release checks支撑工作流: 无 测试: 所选重跑组所需的发布检查任务。 重跑: 在聚焦子任务通过后重跑。 |
Docker 发布路径分块¶
当 live_suite_filter 为空时,Docker 发布路径阶段会运行以下分块:
| 分块 | 覆盖范围 |
|---|---|
core |
核心 Docker 发布路径冒烟泳道。 |
package-update-openai |
OpenAI 包和工具调用证明、Codex 按需安装和实时进度、root 管理的 VPS 升级,以及经过身份验证的更新重启。 |
package-update-onboarding |
频道引导、安装切换和技能安装。 |
package-update-migrations |
频道切换和已发布包升级存活。 |
package-update-self-upgrade |
本地升级存活以及与已发布的九月更新驱动程序兼容。 |
plugins-runtime-plugins |
验证插件行为的插件运行时泳道。 |
plugins-runtime-services |
服务支撑和实时插件运行时泳道。 |
plugins-runtime-install-a 到 plugins-runtime-install-h |
为并行发布验证而拆分的插件安装/运行时批次。 |
openwebui |
在请求时,将 OpenWebUI 兼容性冒烟隔离在专用大容量磁盘运行器上运行。 |
所有四个 package/update 行在每个发布配置中都保留其覆盖范围。
提供商中立的检查在三个运行器之间均衡分配,保留每个
运行器的 npm 限制。package-update-core 和 package-update 仍然是聚合
手动分块名称。root 管理的 VPS 升级和经过身份验证的重启检查
在 OpenAI 行中运行。
缺少必需凭证仍会使任务失败;诊断池继续
运行,以便独立的非实时检查也能报告其结果。设置失败和
取消不会启动该池。
扩展的已发布升级存活和更新迁移覆盖范围在 特定基线的组中运行,每组最多三个场景,每个矩阵最多有 32 个目标 Docker 任务处于活动状态。分组和执行规划器共享 相同的基线兼容性规则;包标识、全新场景 容器、每个运行器的 npm 限制以及失败报告保持不变。
当只有一个 Docker 泳道失败时,在可复用的实时/E2E 工作流上使用目标
docker_lanes=<lane[,lane]>。发布工件包含每个泳道的重跑
命令,在可用时带有包工件和镜像重用输入。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw