• 简体中文
  • 资源管理演进计划

    目标是让 lab 管理不可变资产包和可独立启停的实验室实例,形成“获取资源 → 创建实例 → 操作 → 停止 → 回收”的闭环。首版实例使用 OpenSDL 本地 kinematic 仿真;模型预览、资产包和运行实例具有不同职责。

    当前进度

    以下状态截至 2026-10-15。v0.3.1 的 OpenSDL PR #25 完成可安装 daemon、跨目录操作与便携 USD 拆分修复;原生 Linux、macOS、Windows 测试全部通过。安装入口见 Release。Hub 基础设施已在 Hub PR #3 合并,证明下载修复在 PR #7 合并。Test 自动上线和 UAT 手动晋级已经跑通。

    能力状态使用入口
    校验、打包、OCI 推送/拉取、digest 校验、离线复用公开 CLI 已有安装与 Hub Quick Start
    公共资产搜索、版本与模型预览Hub 已有OpenSDL Hub
    本地 daemon、build、清单、导入、标签、删除与安全 GCv0.3.1 已交付本地资产管理
    按明确 prim 路径拆分 USD,保留纹理依赖与父 digestv0.3.1 已交付;需 OpenUSD Python本地资产管理
    从包创建、启动、停止、重启、检查和删除实例v0.3.1 已交付运行实例
    Docker 风格的 run、ps、start、stop、logs、rm、images 快捷命令v0.3.1 已交付Hub Quick Start
    独立日志、数据、认证端口与设备动作v0.3.1 已交付lab instance logs/devices/send
    Hub 接纳明确的 kinematic 运行声明源码已实现并部署到 Test/UAT包内 spec.runtime
    一条命令完成 Registry、预览与 Hub 发布待实现下一阶段
    场景组合、依赖锁定、多种物理运行时与资源配额待实现后续阶段

    第一阶段:资产到实例

    已实现 lab asset 与 lab instance 两个命令域。创建时固定包 digest 和世界配置;标签移动不会改变保留的实例。停止和失败记录继续占用原包,移除实例后才允许 GC 回收,共享 blob 按实际引用保留。

    验收覆盖两个独立实例、认证设备调用、停止/重启、标签变更、进程崩溃、非法配置/路径,以及实例占用与 GC。完整本地 OpenSDL 测试包含真实 OCI Registry 往返。顶层快捷命令复用同一套实例与资产状态转换;它们提供 Docker 风格的操作入口,但当前运行时仍是本地 kinematic,并不提供 OS 容器隔离。

    第二阶段:发布与可发现性

    实现明确的 Hub 登录与发布配置,把 Registry 上传、预览上传和目录准入组织成可重试的发布流程。凭据按职责分离,已发布版本保持不可覆盖;失败时展示已完成的步骤和可继续的位置。搜索结果明确展示运行时要求,避免把可视资产当成可运行包。

    完成标准:使用独立测试资产完成发布、搜索、按 digest 拉取并创建实例;缺少权限、预览失败和准入失败都有确定结果。

    第三阶段:可复现的实验室场景

    定义类型化的场景组合与依赖锁文件,固定每个资产的 digest、设备标识和连接关系。实例创建前校验完整依赖图,离线模式明确报告缺失资源;多设备场景仍由选定的本地运行时执行。

    完成标准:同一锁文件在干净存储和离线完整存储中创建相同场景;缺失、循环和冲突依赖在启动前被拒绝。

    第四阶段:运行时与运维

    按实际需要增加 MuJoCo/Isaac 等适配器,并建立运行时版本、平台支持和设备可用性的明确检查。再补充 CPU/内存/GPU 预算、健康检查、日志轮转与事件诊断。运行时缺失或设备离线时明确不可用,不自动换设备或退回云端。

    kinematic 当前提供确定性的设备状态演化。OS 容器隔离、网络/卷管理、任意程序执行和完整物理仿真都不在首版能力中;应按实验室需求设计各自的协议和验收,不能从“类似 Docker”的命令体验推断它们已经存在。