冻结设计(commit 8841d27):候选工作单元(WorkCell)组合定义、启动与分层动作设计
变更审阅:PR #188
父地图:#181
Outcome
把遗留启动 JSON/GraphML 收敛为候选工作单元(WorkCell)的永久兼容作者输入,在不丢失旧数据的同时维持单一规范编译、发布、候选启用解析器(Activation Resolver)与运行权威;以 Uni-Lab-OS、uni-lab-fe、Uni-Lab-SZLab 和 Core 的真实跨仓证据完成最终验收。
已接受决策
G1-01=B′ :维护者选择 B“尽量原样保留旧节点对象”。旧节点、uuid、非空 data 与未知字段进入版本化无损兼容保留层;只有已知且校验通过的字段进入规范语义。兼容内容不自动获得定义、启用或运行权威,也不下发驱动。旧 uuid 只有通过独立、显式的 Backend 实例接管映射才可使用,且不进入 content_digest。
G1-02=B′ :维护者选择 B“永久兼容”。永久支持 .json/.graphml 经 -g/--graph 启动,但 B′ 明确为“多格式输入、单一权威”:格式适配器(Adapter)之后统一进入与 .py 相同的规范编译、链接、校验、发布和候选启用链。禁止 trusted-exec、eval、任意作者代码 import/exec、解析失败回退,以及第二套设备实例化/执行路径。
G1-03=A :空 data 从语义层删除;测试 seed 输出到独立测试夹具;一次性 bootstrap 只写迁移报告并推迟到 v2+;真实物料(Material)、库位占用(SiteOccupancy)、设备遥测投影(DeviceTelemetryProjection)、任务物料预留(TaskMaterialReservation)、作业执行占用(JobExecutionClaim)等运行事实拒绝迁入。无法分类的非空 data 无损保存,但仍阻止发布与启用,直到完成分类。
G1-04=A :冻结最小本地仿真夹具与 Uni-Lab-SZLab@cc2bfe4757c33f4833f04d8bfce566347bc2cf74:deployment/graphs/szlab-local-debug.json 真实复杂度夹具;固定来源 commit/摘要、workcell.py、规范 JSON、兼容 sidecar、迁移报告与预期摘要;默认测试不连接真实硬件。
G1-05=A :要求语义固定点。content_digest 覆盖规范定义语义,legacy_payload_digest 覆盖兼容保留载荷,原文件另存字节摘要;JSON → 规范图 → Python → 规范图以及 Python ↔ 规范 JSON/画布均须固定,workspace/clean wheel/cache archive 的语义摘要一致。
G1-06=A :使用真实 compiler、SQLite、SSE、设备注册表(Device Registry)和本地仿真器覆盖三种 -g 输入、快照复用、敏感配置(Secret)、目录漂移与前端折叠/展开,不以 route mock 替代集成证据。
G1-07=A :覆盖工作流支持动作(Workflow-backed Action)的成功、容量方案 B 内部作业交错、派发前/执行中取消、部分物理成功后断电、execution_unknown、同身份投递重放(DeliveryReplay)和物理结算(PhysicalSettlement);禁止整次调用盲目物理重放(Blind Physical Replay)。
G1-08=A :按拥有仓建立交付子问题,Core [候选工作单元(WorkCell)G1] 遗留启动图迁移与跨仓验收 #187 只拥有跨仓黄金测试、submodule pin 和最终接受门。
交付子问题
以上已作为 GitHub native sub-issue 挂接到本票。
Acceptance gates
当前状态
G1 的 8 项协议决策已全部冻结,未决数 0 。交付子问题已建立,但实现与跨仓验收尚未完成;本票进入 stage:implementation,不能因协议冻结而关闭。
Agent report
agent_report :
stage : implementation
reporter : Codex
execution_mode : agent
agent_product : Codex
agent_name : WorkCell G1 convergence
input_refs :
- https://github.com/Uni-Lab-OS/Uni-Lab-Core/issues/181
- https://github.com/Uni-Lab-OS/Uni-Lab-Core/pull/188
result : protocol-frozen-delivery-split
human_reviewer : 昌珺涵
父地图:#181
Outcome
把遗留启动 JSON/GraphML 收敛为候选工作单元(WorkCell)的永久兼容作者输入,在不丢失旧数据的同时维持单一规范编译、发布、候选启用解析器(Activation Resolver)与运行权威;以 Uni-Lab-OS、uni-lab-fe、Uni-Lab-SZLab 和 Core 的真实跨仓证据完成最终验收。
已接受决策
uuid、非空data与未知字段进入版本化无损兼容保留层;只有已知且校验通过的字段进入规范语义。兼容内容不自动获得定义、启用或运行权威,也不下发驱动。旧uuid只有通过独立、显式的 Backend 实例接管映射才可使用,且不进入content_digest。.json/.graphml经-g/--graph启动,但 B′ 明确为“多格式输入、单一权威”:格式适配器(Adapter)之后统一进入与.py相同的规范编译、链接、校验、发布和候选启用链。禁止 trusted-exec、eval、任意作者代码 import/exec、解析失败回退,以及第二套设备实例化/执行路径。data从语义层删除;测试 seed 输出到独立测试夹具;一次性 bootstrap 只写迁移报告并推迟到 v2+;真实物料(Material)、库位占用(SiteOccupancy)、设备遥测投影(DeviceTelemetryProjection)、任务物料预留(TaskMaterialReservation)、作业执行占用(JobExecutionClaim)等运行事实拒绝迁入。无法分类的非空data无损保存,但仍阻止发布与启用,直到完成分类。Uni-Lab-SZLab@cc2bfe4757c33f4833f04d8bfce566347bc2cf74:deployment/graphs/szlab-local-debug.json真实复杂度夹具;固定来源 commit/摘要、workcell.py、规范 JSON、兼容 sidecar、迁移报告与预期摘要;默认测试不连接真实硬件。content_digest覆盖规范定义语义,legacy_payload_digest覆盖兼容保留载荷,原文件另存字节摘要;JSON → 规范图 → Python → 规范图以及 Python ↔ 规范 JSON/画布均须固定,workspace/clean wheel/cache archive 的语义摘要一致。-g输入、快照复用、敏感配置(Secret)、目录漂移与前端折叠/展开,不以 route mock 替代集成证据。execution_unknown、同身份投递重放(DeliveryReplay)和物理结算(PhysicalSettlement);禁止整次调用盲目物理重放(Blind Physical Replay)。交付子问题
以上已作为 GitHub native sub-issue 挂接到本票。
Acceptance gates
data阻止发布/启用;.py/.json/.graphml共用单一运行权威,且语义/兼容双摘要分别达到固定点;stage:accepted并关闭。当前状态
G1 的 8 项协议决策已全部冻结,未决数 0。交付子问题已建立,但实现与跨仓验收尚未完成;本票进入
stage:implementation,不能因协议冻结而关闭。Agent report