9.2 KiB
9.2 KiB
AIOS V2R1 监督状态与阻塞处置清单
- 文档版本:
V2R1C0-candidate - 快照时间:
2026-07-20 17:03:53 CST - 候选分支:
integration/aios-v2r1-cto-production-candidate-20260720 - 候选 OID:
634f6b164f5b20372ab9ec8144bbf76df97de335 - 当前决策:
STOP_PREPRODUCTION - 当前状态:
BLOCKED
1. 执行摘要
AIOS V2R1 的核心代码、完整中文文档、任务合同、部署资产和 GitOps 证据机制已经形成。OpenClaw 与 Codex 已经领取任务并向 Gitea 提交监督证据,三个关键分支的本地 OID 与 Gitea OID 已一致。
当前仍不允许进入预发布,原因不是主体功能缺失,而是安全、签名材料、Candidate 合并、执行来源证明和 Controller 健康检查五项高风险门禁未通过。
当前禁止:
- 进入 Gate A–D;
- 执行在线 Runtime 联调;
- 执行重启恢复和回滚演练;
- 合并
main; - 创建 Tag;
- 正式部署或切换流量。
2. 权威仓库与执行状态
| 项目 | 当前值 |
|---|---|
| 权威 Bare Repo | /data/aios-gitops/repo.git |
| OpenClaw Worktree | 独立且 clean |
| Codex Worktree | 独立且 clean |
| Gitea Remote | https://g.cnnetmkt.top/git/aios/aios.git |
| Candidate OID | 634f6b164f5b20372ab9ec8144bbf76df97de335 |
| OpenClaw Task OID | bd2784015d40c328d158cd52ebd8683b6e56b3ad |
| Codex Task OID | e28245f411dd85ff9384ed595dacc53aab8a91ba |
| 三分支 Gitea 同步 | local_oid == gitea_oid |
| OpenClaw 状态 | blocked |
| OpenClaw Heartbeat | 有记录,但 valid_for_running=false |
| Codex 状态 | blocked |
| Codex Heartbeat | 新鲜 |
| Codex 发布建议 | STOP_PREPRODUCTION |
3. 已完成的安全与运行修复
3.1 Gitea 凭据轮换
已完成:
- 旧
owner/openclaw-deploy-cli、scope=all凭据 live count 为0; - 新凭据:
gitops-bot/openclaw-deploy-cli-v2-20260720; - 新凭据作用域:
write:repository; - 凭据文件权限:
root:gitops 0640; - 令牌值未进入 Git、日志、Evidence 或报告。
3.2 Gitea 与执行服务
已完成:
- 验证 Gitea SSH 指纹;
- 备份并修复
known_hosts; - 恢复
aios-agent-command-watcher; - 恢复
aios-autonomous-controller; - 两项服务均为
active; - OpenClaw/One API 真实模型调用返回 HTTP 200;
- OpenClaw/Codex claim、heartbeat、progress、blockers、result、status 已提交并同步 Gitea。
4. 当前开放阻塞
4.1 BLK-OPENCLAW-PLAINTEXT-SECRETS
- 严重级别:高
- 状态:开放
- 现象:OpenClaw 受管配置仍发现 3 处
PLAINTEXT_FOUND。 - 风险:明文 Secret 可能进入配置、日志、命令参数或执行证据。
- 解除条件:
- 三处明文内容全部迁移为 SecretRef、systemd Credential、只读 Secret Volume 或仓库外受保护文件;
- 旧值完成撤销和轮换;
- Secret Scanner 复验通过;
- Git 历史、日志和 Evidence 不包含明文。
4.2 BLK-AIOS-V2-SIGNING-MATERIAL-MISSING
- 严重级别:高
- 状态:开放
- 现象:
/etc/aios-v2/aios-v2.env已存在且权限合规,但/etc/aios-v2/openclaw-signing-material.bin不存在。 - 风险:无法验证 OpenClaw 签名命令、Key ID 与真实 Runtime 身份链。
- 外部受信输入:批准的签名材料。
- 解除条件:
- 签名材料由批准的 Secret/Key 交付链安装到仓库外;
- 权限为
0600或更严格; - 运行用户可读;
- Key ID 与材料匹配;
- execute/status 路径完成真实签名验证;
- 不输出材料内容、Hash 或长度特征。
4.3 BLK-CANDIDATE-NOT-MERGED
- 严重级别:高
- 状态:开放
- 现象:OpenClaw Task 尚未包含当前 Candidate,
merge-base --is-ancestor未通过。 - 风险:后续测试和部署不能证明当前 Candidate 可用。
- 解除条件:
- 保护已有
.agent/Evidence; - 普通 Merge 当前 Candidate 到 OpenClaw Task;
- 解决冲突并由 Codex 审查;
- 更新所有 Evidence 中的
candidate_commit; - 本地与 Gitea OID 再次一致。
- 保护已有
4.4 BLK-OPENCLAW-RUN-PROVENANCE-MISSING
- 严重级别:高
- 状态:已解决
- 根因:旧插件只有进程内
runId -> senderMap,没有 Owner-signed Schema、持久 Store 和限定 Git Writer。 - 修复:部署
aios-tenant-boundaryrc2,增加 Ed25519 issuer/store、Run/Sender/OID/期限绑定、一次性 permit 与专用aios_evidence_write。 - 验证:Provenance
openclaw-v2r1-20260721T031523Z完成 Heartbeat 写入、Commit、普通 Push 和审计;README.md越权请求被拒绝;Node 测试 9/9。
4.5 BLK-CONTROLLER-LEGACY-GITEA-CHECK
- 严重级别:高
- 状态:已解决
- 现象:Controller 健康检查仍硬编码旧
aios-v23,并返回gitea=false、branch_sync=false。 - 风险:健康状态与当前 AIOS V2R1 仓库不一致,可能错误阻止或错误放行发布。
- 解除条件:
- 移除旧仓库硬编码;
- 从配置读取权威仓库、Remote 和目标分支;
- 健康检查分别报告
local_sync、gitea_sync和oid_match; - 不再把本地 Bare Repo 更新当作完全同步;
- 增加回归测试;
- 更新中文文档和追踪矩阵。
5. 模型审查策略修正
gpt-5.3-codex-spark 是子 Agent 审查的优先推荐模型,不是强制依赖。
执行规则:
- Spark 可用时优先使用;
- Spark 不可用时,使用模型注册表中已批准、已启用且优先级最高的合适模型;
- 必须记录实际
model_id、模型名称和审查结果; - 禁止冒充使用不存在的模型;
- 只有完全没有可用审查模型时,模型能力才构成阻塞。
当前五个 Spark 角色的独立结论一致为“禁止生产放行”,该结论作为已有审查证据保留;后续复验可使用任何满足上述规则的批准模型。
6. Gate 状态
| Gate | 当前状态 | 说明 |
|---|---|---|
| Gate A:文档与设计 | 允许启动 | 五项高风险 Blocker 已解除,等待正式执行 |
| Gate B:代码与测试 | 等待 Gate A | 等待正式执行候选测试 |
| Gate C:预发布 | 禁止 | 等待 Gate A、Gate B、离线全量验收和在线联调 |
| Gate D:发布审查 | STOP_PREPRODUCTION |
Codex 明确停止预发布 |
| Gate E:生产发布 | 禁止 | 未满足任何生产 Gate |
7. 阻塞解除顺序
必须按以下顺序处理,避免重复测试和错误放行:
1. 清除 3 处明文 Secret
↓
2. 安装批准的签名材料
↓
3. 签发最小范围 Run Provenance
↓
4. 修复 Controller 旧仓库健康检查
↓
5. Merge 当前 Candidate 到 OpenClaw Task
↓
6. 校验 local_oid == gitea_oid
↓
7. 执行 Gate A:文档—代码检查
↓
8. 执行 Gate B:单元与集成测试
↓
9. 执行离线全量验收
↓
10. 执行在线 Runtime 联调
↓
11. 执行重启恢复与回滚
↓
12. Codex 重新审查并给出发布建议
8. 外部受信输入
五项高风险 Blocker 当前均不再需要新的外部受信输入。签名材料继续留在受保护边界,Provenance 仍须按 Run 由 Owner 限时签发,不得转化为长期通用权限。
9. 监督结论
当前状态保持:
PARTIAL
STOP_PREPRODUCTION
三分支已同步 Gitea,五项高风险 Blocker 已解除,允许执行 Gate A、Gate B 和离线全量验收;在三项正式结果与后续在线验收形成证据前,不进入预发布。
任何后续状态更新必须同步:
- OpenClaw
.agent/status.json、blockers.json、progress.json、result.json; - Codex 对应监督 Evidence;
- 本文档;
05-TRACEABILITY-MATRIX.md;AIOS-V2R1-PRODUCTION-CANDIDATE.md;- 如涉及架构或发布语义,更新 ADR。
10. 2026-07-20 至 2026-07-21 Owner 修复实况
- Worktree:OpenClaw 与 Codex 独立、目标分支唯一检出、无 lock、无 prunable;现有 Evidence 已先备份。
- Candidate:
ba7669c3b49f98cf3500af6ea966ba0db472ff3b已普通 Push 到 Gitea,并以--no-ff合入 OpenClaw 任务分支。 - Secrets:OpenClaw 原生 audit 从 3 项明文降为
plaintext=0、unresolved=0、shadowed=0、legacy=0;Gateway Token 已轮换,OneAPI 实际 agent 调用通过。 - Signing:命令合同已从名实不符的 HMAC 改为真实 Ed25519;
openclaw-v2r1-candidate-ed25519材料由 Owner 在受保护边界生成,运行用户权限检查、sign/verify 和篡改拒绝通过。 - Controller:修复分支
patch/bugfix/controller-gitea-health-v2r1-20260720的 OID6188da26453505dacde9d6d298191437164c8d27已部署;12 项测试通过,active worktree detached + clean,gitea=true、branch_sync=true、oid_match=true、sync_status=fully_synced。 - Provenance:插件 rc2 已声明原生工具合同并通过 runtime doctor;Owner-signed Store、一次性 permit、七路径 Writer、普通 Push、审计与越权拒绝均通过。首次部署检查脚本曾两次因读取错误 JSON 层级触发自动回滚,旧插件与配置均成功恢复,修正断言后部署成功。
因此当前结论仍为 STOP_PREPRODUCTION,但 Gate A 已允许启动;后续结论必须基于 Gate A、Gate B、离线 Acceptance、在线 Runtime、重启恢复和正式回滚演练的最新证据。