Skip to content

[候选工作单元(WorkCell)D4] 嵌套组合、公开边界与设备注册表(Device Registry)投影 #185

Description

@TablewareBox

独立设计文档(审阅中):候选工作单元(WorkCell)组合定义、启动与分层动作设计
变更审阅:PR #188

父地图:#181

Outcome

冻结候选工作单元(WorkCell)的递归组合、内部成员查看/寻址边界、公共端口和设备注册表(Device Registry)投影,使上层能把整个候选工作单元(WorkCell)当作一个复合设备使用,同时不泄漏私有成员权威。

已接受决策(Accepted Decisions)

  1. D4-01=A:嵌套闭包与身份。 每条嵌套边固定内层 definition_fqid + revision + definition_digest 和外层稳定 member_id;发布前递归解析精确闭包并按 definition revision 身份检测循环。子成员运行 UUID 由根候选工作单元实例(WorkCell Instance)UUID 与完整 member_id 路径确定性 UUIDv5 派生。
  2. D4-02=A:封闭导出。 本地符号只有 private | exportedre_export 是显式命名映射,只能转导内层已经 exported 的符号。禁止通配符、自动传递导出和私有成员提权。
  3. D4-03=A:候选可查看性与候选可寻址性分离。 授权维护者可读取私有成员的只读诊断投影,但不会因此获得外层工作流(Workflow)、连接或初始化绑定地址;v1 不提供绕过公共边界的诊断直控。候选可查看性(Inspectability)和候选可寻址性(Addressability)的中文名在进入根词汇表前仍标记为候选术语。
  4. D4-04=A:显式公共边界和能力收窄。 公共端口保持方向/类型兼容;公共库位(Site)使用稳定外部句柄一对一映射已导出的内部库位(Site);公共动作(Action)只能导出已发布内部动作(Action)或工作流支持动作(Workflow-backed Action)。允许绑定/隐藏固定输入、缩小范围和减少能力,禁止扩大输入域、改变单位/方向或重解释效果语义。
  5. D4-05=A:投影权威分离。 Published 制品拥有完整装配结构、精确闭包、完整检查图和 source map;PackageCatalog 只索引定义身份、revision、摘要与公共合同;设备注册表(Device Registry)只保存派生的候选复合设备投影(Composite Device Projection);候选启用运行时拥有活跃实例状态,设备注册表只接收只读实例投影;前端不拥有上述事实。
  6. D4-06=A:前端投影。 Palette 只列 Published 定义;折叠/展开只属于界面视图,不进入规范定义摘要,也不改变物理 pose、运行拓扑或可寻址性。授权私有检查图只读、按需读取;运行状态独立叠层;源码导航使用“定义摘要 + package 相对路径 + source span”。
  7. D4-07=A:双摘要。 definition_digest 覆盖完整定义、私有实现和 exact dependency closure;public_contract_digest 只覆盖可寻址公共边界。私有变化产生新 revision/完整摘要但可保持公共摘要;外层仍须显式 re-link/re-publish。digest 差异不直接等于破坏性变化,兼容性另做结构化比较。

实现与验收门

  • nested cycle、member_id/导出 alias 冲突、缺失 exact digest 和非法 re_export 在发布前失败;
  • UUIDv5 派生在同一根实例重启后稳定、不同实例之间隔离;
  • Draft/Candidate 不进入设备注册表(Device Registry),Published 才投影;
  • 私有成员可授权查看但不可直接寻址或诊断直控;
  • 外层只通过显式公共边界连接、配置和调用;
  • 折叠/展开不改变规范摘要、物理 pose 或运行拓扑;
  • 私有实现新 revision 不改写既有外层定义、候选启用快照(Activation Snapshot)或工作流任务(WorkflowTask);
  • 公共合同兼容性由结构化比较判断,不从 digest 是否变化推断。

状态

D4 协议已由维护者全部选择 A;当前仍为协议定义阶段,尚未创建或接受跨仓实现与测试证据,因此本票保持打开且不进入 stage:accepted

关联

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature:workcell-compositionWorkCell 组合定义、注册编译、可见性与 Action 发布ready-for-humanRequires human implementationstage:protocol-definitionDefining or freezing the OKF protocolwayfinder:grilling需要与人逐题确认的 Wayfinder 决策票

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions