具身试点计划¶
状态: 试点计划提案,2026-11-08 更新。AKROVELA 已选定为消费者,维护者和安全负责人选择 已记录。AKROVELA 仓库现已有产品侧 Core 适配器和本地验证的确定性 P1 切片:精确操作工具、 治理运行时装配、PostgreSQL Run/对账日志,以及公开的 v1 操作/回执契约。仿真任务、独立观测源和 验证者、ROS 2 执行、硬件效果与 E1-E8 试点证据仍未实现或待定。本页是验收计划,不是时间表、 人员计划或试点验收声明。详细执行计划仍保存在内部规划存储中。
本计划把具身集成 Profile 的 E1-E8 要求转化为有边界、 可记录的证据。它不新增 Core API、Wire 契约、运行时或 Profile 开关。
目的¶
试点只回答一个有证据的问题:明确的消费者能否使用既有 Core 接缝,加上自己的中间件和执行 权威,提交具身动作并报告结果,而不会把接受、完成和已验证效果混为一谈?
通过仿真不是目标。目标是可复现地记录:哪些要求由哪个组件执行、在哪些故障下验证、哪些要求 仍不受支持。
范围¶
一个试点包含:
- 一个明确消费者和一位负责维护者;
- 一个把 Core 工具调用转换为消费者动作协议的中间件;
- 一个有明确成功条件和安全停止的有边界仿真任务;
- 一个拥有权威远程操作状态的执行权威;
- 一个观测源和一个独立验证者;
- 在需要持久恢复时可选接入的工作流/协调服务;
- 负责停止、联锁和升级处理的部署安全负责人。
先从确定性 fixture 开始,再做端到端仿真。硬件试验是可选的、需单独批准,且永远不能用来 让仿真证据显得比实际更强。
非目标¶
- 不新增 Core API、事件名、Wire 枚举、Profile 构造器或发布线。
- 不提供机器人平台、运动规划器、硬件驱动、认证安全控制器、实时运行时或分布式事务。
- 在消费者证明需求前,不并行开发 ROS 2、Dora 或 Zenoh 适配器。
- 不做 exactly-once 声明,不做硬件或生产认证,不实现急停。
- 仿真不是硬件证据;工具返回不是效果证明。
拟交付形式¶
AKROVELA 已选定为消费者,并像 PRAXOVELA 一样将 PRAXO-CORE 作为产品组件嵌入;其适配器
位于 AKROVELA 仓库。DIDACTOVELA 采集/学习仍是可选边界,不是所有试点的前置依赖。两者均为
未发布 0.1.0 产品。AKROVELA 节点路径需公开操作/回执和观测契约及故障测试;学习交接需明确
数据准入、候选与评估边界。初始化不能算 P1/P2 证据,也不静默迁移已有消费者。Core 只提供
公开 API 和通用约束,不拥有 AKROVELA 产品状态或领域权威。
交付明确消费者示例、单个中间件实验适配器、消费者局部操作/观测协议、确定性与仿真测试及限定证据。 复用统一治理装配设计并增加领域要求,不另建安全栈;本计划不交付装配实现或 Core 新构造器。
协议覆盖提交、查询、取消请求/确认、观测与验证,绑定操作、载荷、资源和执行 epoch,并规定去重
保留期与权威恢复。这是消费者级协议映射,不是共享 spec/ 变更。优先复用版本化公开执行与实验
契约,不另建 Mission 或证据模型;缺口在所属契约发布并审查前保持阻塞。中间件细节留在适配器;有消费者
复用证据后才考虑集成契约晋级,只有证明局部执行缺口后才考虑 Core API。
配置校验与行为验收分别记录;选中层次或绑定依赖不构成能力保证。缺失必需控制时拒绝装配, 运行时权限、审批、新鲜度和资源检查仍由实际边界执行。
角色与权限分离¶
| 角色 | 责任 |
|---|---|
| 消费者 | 拥有任务、动作协议、资源范围和证据记录 |
| 维护者 | 保持试点可复现,并审查范围和声明 |
| Core | 局部 Run、已配置 Policy/HITL、工具调用、事件、取消、Checkpoint 契约 |
| 中间件 | 翻译命令与观测、关联 ID、保留未知结果、限制输入与资源 |
| 执行权威 | 接受或拒绝命令,拥有权威操作状态,去重并确认取消 |
| 观测源 | 以声明的时钟域提供带时间戳观测 |
| 验证者 | 独立检查新鲜度、顺序和声明的物理效果 |
| 工作流/协调服务(可选) | 持久恢复、任务协调、lease、fencing |
| 安全负责人 | 拥有受控停止、联锁、升级处理和批准的安全状态 |
局部 Run、协调 Task、持久 Process、机器人 Mission 的 ID 与权威分别保留。这些是概念映射, 不是 Core 字段。Run 完成绝不能报告为 Mission 完成。
准入条件¶
在记录以下全部内容前,试点保持计划中状态:
- 明确消费者与维护者接受受治理执行 Profile 的义务。
- 明确一个中间件和一个有边界仿真任务。
- 明确执行权威、观测源、验证规则和安全负责人。
- 记录新鲜度阈值、时钟域、超时、所有权规则、取消协议和升级行为。
- 定义凭据、租户、秘密和证据保留处理方式。
- 固定 Core、中间件、仿真器、执行权威和运行时的准确版本。
- 每个治理 G1-G8 和具身 E1-E8 要求都有适用规则、明确执行组件和允许、负向、故障测试计划。
- 在证据存在前,不请求 Core API 或 Wire 变更。
- 记录公开实验/执行契约与 SDK revision、显式 experiment-attempt/Run/Mission 绑定及能力映射。 缺少已发布接口或必需能力时阻塞对应门禁。
- 世界状态和独立保障权威与原始实验证据、Mission 执行分别指定;声明仿真命名空间、声明模式, 以及控制面失联时的本地安全行为。
任何一项缺失时,试点仍是设计讨论,不是实验性实现。
阶段与门禁¶
| 阶段 | 工作 | 证据 | 出口门禁 |
|---|---|---|---|
| P0. 基线 | 选定消费者、中间件、仿真、权威、观测源、验证者和安全负责人;固定版本;映射 G1-G8 与 E1-E8 并定义消费者协议 | 范围、协议、责任映射、威胁/数据说明与验证者独立性 | 所有准入条件已记录 |
| P1. 确定性 fixture | 校验统一装配,以假依赖运行治理与具身允许、负向、故障路径 | 配置结果、测试名、断言、运行记录 | 适用 G1-G8 与 E1-E8 确定性门禁通过,含成功验证动作;不需要真实服务 |
| P2. 仿真 | 在回环连接中间件、仿真器、权威、观测与验证者;通过治理入口和真实效果边界执行成功路径及必需故障 | 命令与权威响应、观测、验证者 receipt、取消确认、重复与过期所有权拒绝 | 适用 G1-G8 与 E1-E8 仿真门禁通过;无虚假完成;未知结果保持未知 |
| P3. 可选硬件试验 | 仅在安全负责人批准且定义安全停止后,重复选定测试 | 硬件观测与限制 | 硬件证据单独界定;不是试点验收的必要条件 |
| P4. 复盘 | 审查声明、缺口、剩余风险和晋级选项 | 已发布证据摘要和决策记录 | 记录决定:保持实验、停止,或请求经审查的契约变更 |
E1-E8 测试矩阵¶
| ID | 确定性 fixture | 仿真 | 证据 |
|---|---|---|---|
| E1 | 缺失身份、目标/范围不匹配和审批编辑阻止提交 | 同样检查在真实适配器和权威边界仍然有效 | 最终动作、参数、授权决定和审批绑定 |
| E2 | 接受命令和工具成功返回都不把效果标记为完成 | 完成之后由验证者确认或拒绝声明的效果 | 接受、完成和效果已验证三种结果分开记录 |
| E3 | 拒绝过期、重放、错误资源/来源/epoch 和乱序观测,含审批期间过期 | 最终放行时复核绑定、序列与新鲜度,声明时钟不确定性 | 来源/资源/epoch、时间戳、序列与新鲜度决定 |
| E4 | 局部 Run 取消和取消请求被接受均不证明远程停止 | 分开停止已确认、取消被拒绝和取消结果未知;用权威状态解决完成竞争 | 请求、接受、停止确认或拒绝/未知,以及独立效果结果 |
| E5 | 响应丢失和重复提交通过权威操作键解决 | 重试前查询,须有权威无效果证明或有效目标去重;拒绝载荷不匹配 | 操作键、载荷绑定、保留窗口、查询与实际效果次数 |
| E6 | 必需 Policy、观测、权威或安全依赖失败阻止新的依赖动作 | 同一故障触发消费者定义的升级路径 | 失败依赖、被阻止动作和升级记录 |
| E7 | 过期 worker 或 lease 不能发起新效果;Checkpoint 恢复不重建权威 | fencing token 由实际效果边界检查 | 过期所有权拒绝和当前所有权证明 |
| E8 | 证据记录包含关联信息但不含秘密 | 证据故障与效果状态分开;修复只追加且不重做效果 | 命令、响应、观测、取消、验证结果、脱敏与补证来源 |
治理 G1-G8 清单同为必需;仅 E1-E8 不能通过试点。 包含其他入口和校验后变更、身份/委托/租户、并发单次审批与崩溃窗口、上下文恢复/信任、执行前后 证据故障测试。配置结果与行为产物分别保留;文档结构测试不是行为证据。
至少一条允许的端到端路径完成授权、接受、执行完成、独立验证仿真效果并保留证据。 每个测试规定初始状态、故障点、有界等待、预期/实际效果次数与最终权威/验证者断言。 拒绝所有动作的实现不能通过。
在执行正确性证据索引 中把 EC-13 映射到本矩阵。 确定性 fixture 属于 EC-D 证据;仿真属于 EC-I;硬件与生产观察属于 EC-O,单独界定。
必需故障覆盖¶
试点至少应注入:
- 缺失、过期、乱序和时钟偏移观测;
- 错误机器人的新观测、旧操作重放、审批延迟过期和重启后的序列/epoch 重置;
- 命令被接受前后中间件或权威断连;
- 持久或可能持久效果之后的响应丢失;
- 相同载荷和不匹配载荷的重复提交;
- 原提交迟到、陈旧
not found、去重键过期和并发重试; - 已请求、已接受、已拒绝和从未确认的取消;
- 已确认远程停止及取消与完成竞争;
- 并发单次审批消费,以及调用前或目标接受后、本地记录前的崩溃;
- 过期 worker、过期 lease 和从 Checkpoint 恢复所有权;
- 必需 Policy、观测、权威和安全服务故障;
- 验证者不可用和证据存储失败。
对每种故障,记录效果是已确认、确认未发生还是未知,以及是否阻止了新的依赖动作。
验证者使用执行服务成功标记以外的证据。声明进程、观测源和信任域独立性及共同故障模式; 独立进程读取同一个成功标记不满足要求。
证据记录¶
每次尝试保留 experiment/run/attempt 身份、scenario/control/SUT 摘要、seed、时钟、观测者健康、 产物完整性与清理证据。引用实验平台原始证据及 Mission 权威效果记录,不把它们重写成调用者签发的 保障结论。保留显式缺失、校准/保真度限制与合成/重放来源;必需证据缺失不算通过。 仿真事实不得隐式晋级到真实运行视图。原始证据与最终独立保障是不同产物,不是 Core 事件或新共享信封。
测试跨 attempt/租户/epoch 错绑、重放事件导致 Mission 再提交、缺少公开能力、观测者和清理失败。 清理故障与效果结果分别记录;缺少必需隔离或清理证据时不完整通过。实验销毁后,未解决的远端工作 仍需权威取消/状态对账。
每次运行按测试证据规范 记录日期、commit、包与产物版本、 中间件与仿真器版本、环境、配置、过程、数据、结果、发现和限制。原始记录保存在所属产品或 内部存储;只发布精确绑定 revision 的限定摘要。
不得记录凭据、租户数据或个人数据。脱敏检查是证据的一部分,不是事后补充。
验收与停止条件¶
试点验收需要全部满足:
- 每个 E1-E8 要求通过确定性和仿真门禁;
- 每项适用 G1-G8 通过两种门禁且允许的端到端路径成功;必需检查跳过、阻塞、失败或未运行时 不通过;排除只能缩小实验声明,不构成完整验收;
- 每个场景中接受、完成和效果验证保持分离;
- 未确认的取消不得报告为停止;
- 过期观测不得授权依赖动作;
- 未知结果不得盲目重试;
- 必需安全依赖故障阻止新的依赖动作;
- 证据被保留并关联,且不含秘密;
- 限制与不支持行为随结果一起发布。
出现以下情况立即停止或判定失败:
- 把局部 Run 完成呈现为 Mission 完成;
- 把接受命令或工具返回呈现为已验证效果;
- 依赖故障变成虚假的“已确认安全”状态;
- 中间件或权威绕过必需授权或审批;
- 证据被伪造、原始时间戳造假、失败记录被覆盖,或从不同 revision 推断结果。
合法补证追加原缺口、修复时间、权威来源、操作关联与责任主体。保留失败尝试,不能把修复证据 冒充同时发生的原始证据,也不能盲目重做效果。
晋级¶
仿真成功不会自动晋级 Profile。P4 之后,维护者可以:
- 为明确消费者保持实验结果;
- 停止试点并记录原因;
- 请求共享 API 或 Wire 变更;这需要明确消费者、负向测试、兼容性与语言审查、
规范
spec/更新、parity、一致性向量和消费者验证。
任何 Profile 标签都不能免除这些要求。
风险¶
| 风险 | 缓解 |
|---|---|
| 仿真掩盖时序和物理不确定性 | 声明时钟假设、注入偏移和延迟,并单独保留硬件证据 |
| 中间件意外变成权威 | 明确权威归属,并测试其拒绝与确认路径 |
| 把局部取消误认为远程停止 | 把取消记录为已请求、已确认、已拒绝或未知 |
| 重复安全只在应用层 | 在实际效果边界绑定稳定操作键,并测试载荷不匹配 |
| 过期所有权在恢复后仍发起效果 | 对效果边界执行 fencing,并测试过期 worker/lease 拒绝 |
| 证据压力导致伪造历史 | 发布未知与失败结果;区分追加式补证与伪造原始证据 |
待定决策¶
- 明确消费者、维护者、中间件、仿真器和有边界任务。
- 执行权威及其状态查询与去重行为。
- 观测源、时钟域、新鲜度阈值和验证规则。
- 取消协议与升级路径。
- 可选工作流/协调服务与 fencing 机制。
- 硬件范围与安全负责人批准。
- 证据保留、脱敏和发布边界。