Run:作者声明

Run 是 YAML、JSON 或 TOML 中的人类可读入口。它选择 schema、名称、后端、运行策略、Scenario、控制策略、插件和显式覆盖。Run 应表达“这次运行选择什么”,而不是复制所有组件细节。

yaml
schema: fastsim/2
name: kitchen-evaluation
backend: isaaclab
runtime:
  physics_hz: 60
  control_hz: 30
  seed: 7
scenario:
  use: scenario://kitchen/evaluation
plugins:
  recorder:
    use: plugin://official/record

ExecutionPlan:唯一执行权威

编译器展开 Project 与 Registry,解析组件 release 和后端 variant,验证插件 binding、频率与资源,并生成深层不可变的 ExecutionPlan。Plan 中保存规范化 Scenario、运行策略、已解析实体、插件绑定和 provenance。

源码 Run 发生变化时需要重新编译;Runtime 不应继续持有原始配置字典并在中途读取新字段。

Lock:可验证的复现边界

Lock 固化组件准确版本、Manifest、资源摘要和 plan digest。它用于部署、审计与复现实验,回答“这次真正执行了什么”,而不是替代 Run 成为新的编辑格式。

产物 主要读者 是否适合手工编辑 生命周期
Run 项目作者 随项目修改
ExecutionPlan Runtime、诊断工具 每次编译生成
Lock 部署、复现、审计 不建议 随批准的输入固定

失败应出现在哪里

语法、字段、组件冲突、资源 digest、能力或插件契约问题应尽量在编译阶段失败。运行阶段只处理确实依赖实时世界的状态与操作错误。

字段级事实见配置参考;命令见CLI 与输出