Parent roadmap:https://github.com/unilabsim/unisim/issues/154(A/E)。依赖 unilabsim/unisim#155 公共 MJCF normalization/layout 契约。Owner:UniLab SceneCfg/backend factory、Manager-Based entity/reset/control 消费层。Intended PR base:本仓 main;待 UniSim 公共契约冻结后开发,不从已结束的 M2 分支继续。
问题与证据
审计基线:UniLab 2fe53fba,UniSim 1.6.0。src/unilab/envs/manager_based_rl_env.py 的 _resolve_backend_entity_contract() 和构造路径按 cfg.scene.entity_assets 分支;只有该字段非空才从 backend 初始化 ctrl 并向 ResetStateTransaction 传入 get_scene_layout()。这是现有契约下的行为,不据此宣称当前存在 bug。UniSim 公共组合契约更新时,需要验证这些消费假设、默认控制与 reset 时序仍成立,按实际变化迁移。
src/unilab/base/backend_factory.py 负责调用资产 hub;公共归一后的 source 关系必须与该 owner 协调,不能让 env 热路径解析资产或绕过资产注册。下游不另建 MJCF composer。
交付与边界
验收与迁移
以既有 tests/base/test_entity_scene_consumer.py、tests/envs/test_multi_entity_consumer.py 为基线,覆盖省略字段保持、未选实体/环境隔离、mirror 继承身份而不继承 pose,以及 public state/action 维度的兼容性。未支持组合构造期明确拒绝。
链接 ADR-0007、ADR-0006 及 UniSim 公共组合 ADR。若改变 policy-I/O 或 network-shape 字段,同步 sim2sim contract 和测试;本项不预先授权改变维度。
最终 head 跑 focused consumer/config/reset tests、make check、make test,创建/更新 PR 前跑 make test-all;main PR 等当前 head CI。涉及 docs 时遵循 docs/sphinx/AGENTS.md。双语迁移说明记录安装版本、入口行为及 unsupported 边界。真实 Isaac 证据单独记录,不以 mock 或训练曲线替代。native camera 仍由 unilabsim/unisim#133 独立跟踪。
Parent roadmap:https://github.com/unilabsim/unisim/issues/154(A/E)。依赖 unilabsim/unisim#155 公共 MJCF normalization/layout 契约。Owner:UniLab SceneCfg/backend factory、Manager-Based entity/reset/control 消费层。Intended PR base:本仓
main;待 UniSim 公共契约冻结后开发,不从已结束的 M2 分支继续。问题与证据
审计基线:UniLab
2fe53fba,UniSim 1.6.0。src/unilab/envs/manager_based_rl_env.py的_resolve_backend_entity_contract()和构造路径按cfg.scene.entity_assets分支;只有该字段非空才从 backend 初始化 ctrl 并向 ResetStateTransaction 传入get_scene_layout()。这是现有契约下的行为,不据此宣称当前存在 bug。UniSim 公共组合契约更新时,需要验证这些消费假设、默认控制与 reset 时序仍成立,按实际变化迁移。src/unilab/base/backend_factory.py负责调用资产 hub;公共归一后的 source 关系必须与该 owner 协调,不能让 env 热路径解析资产或绕过资产注册。下游不另建 MJCF composer。交付与边界
[1,1,0,1,0]至少在已支持的 MuJoCo 路径验收;IsaacSim round-robin profile 可先验证,任意 assignment 的 native 验收依赖 isaacsim: 任意 per-env 指派的 K 原型精确 spawner unilabsim/unisim#82,不把拒绝测试算支持。验收与迁移
以既有
tests/base/test_entity_scene_consumer.py、tests/envs/test_multi_entity_consumer.py为基线,覆盖省略字段保持、未选实体/环境隔离、mirror 继承身份而不继承 pose,以及 public state/action 维度的兼容性。未支持组合构造期明确拒绝。链接 ADR-0007、ADR-0006 及 UniSim 公共组合 ADR。若改变 policy-I/O 或 network-shape 字段,同步 sim2sim contract 和测试;本项不预先授权改变维度。
最终 head 跑 focused consumer/config/reset tests、
make check、make test,创建/更新 PR 前跑make test-all;main PR 等当前 head CI。涉及 docs 时遵循 docs/sphinx/AGENTS.md。双语迁移说明记录安装版本、入口行为及 unsupported 边界。真实 Isaac 证据单独记录,不以 mock 或训练曲线替代。native camera 仍由 unilabsim/unisim#133 独立跟踪。