Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
227 lines
9.0 KiB
JSON
227 lines
9.0 KiB
JSON
{
|
|
"schema_version": "1.0",
|
|
"experiment_id": "6-13",
|
|
"kind": "reference_and_blocker_audit_not_acceptance",
|
|
"generated_at": "2026-07-29T15:35:16.622749+00:00",
|
|
"host": {
|
|
"node": "bojMacBook-Pro.local",
|
|
"platform": "macOS-26.3-arm64-arm-64bit",
|
|
"machine": "arm64"
|
|
},
|
|
"source_integrity": {
|
|
"head": "87d6c1d969f6e0ca4dc5697940804e231118a63a",
|
|
"expected_head": "87d6c1d969f6e0ca4dc5697940804e231118a63a",
|
|
"passed": true,
|
|
"files": [
|
|
{
|
|
"path": "docs/zero_shot_rgb_sim2real.md",
|
|
"expected_blob": "844d113a726d7c3c8494700496591a2604f742e0",
|
|
"found_blob": "844d113a726d7c3c8494700496591a2604f742e0",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "docs/assets/camera_alignment_step_1.2.png",
|
|
"expected_blob": "688f0089c4a99bb2f608a805cbbb9fd96fb80830",
|
|
"found_blob": "688f0089c4a99bb2f608a805cbbb9fd96fb80830",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "docs/assets/camera_alignment_step_1.3.png",
|
|
"expected_blob": "20943d0a0eff5b64afaafb04dab3522791e3bcf2",
|
|
"found_blob": "20943d0a0eff5b64afaafb04dab3522791e3bcf2",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "docs/assets/eval_return_success_curves.png",
|
|
"expected_blob": "7185d982e165081ec0ad5ded4eb21dc9f172bac9",
|
|
"found_blob": "7185d982e165081ec0ad5ded4eb21dc9f172bac9",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "docs/assets/tutorial_result_video.mp4",
|
|
"expected_blob": "d15f57adfd8b889ed8bb4d44d073f0cf7ba96c4a",
|
|
"found_blob": "d15f57adfd8b889ed8bb4d44d073f0cf7ba96c4a",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "env_config.json",
|
|
"expected_blob": "e32727956fc9dbf64336b53b77bc1a6044e2f5ef",
|
|
"found_blob": "e32727956fc9dbf64336b53b77bc1a6044e2f5ef",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "system_id_so100.npy",
|
|
"expected_blob": "047b0110496f15f3a78a41b59c9f041cbbbbfd91",
|
|
"found_blob": "047b0110496f15f3a78a41b59c9f041cbbbbfd91",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "lerobot_sim2real/scripts/record_reset_distribution.py",
|
|
"expected_blob": "ff20e1c3ea34b6d75f646c325f6fe49e1d83903c",
|
|
"found_blob": "ff20e1c3ea34b6d75f646c325f6fe49e1d83903c",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "lerobot_sim2real/scripts/camera_alignment.py",
|
|
"expected_blob": "5d7a323075e43ba5c0a24bd2ce6c910f89e4a9c6",
|
|
"found_blob": "5d7a323075e43ba5c0a24bd2ce6c910f89e4a9c6",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "lerobot_sim2real/scripts/capture_background_image.py",
|
|
"expected_blob": "f30d97cd7ead0cdfe9b38ea6c9523a5f38b404aa",
|
|
"found_blob": "f30d97cd7ead0cdfe9b38ea6c9523a5f38b404aa",
|
|
"passed": true
|
|
},
|
|
{
|
|
"path": "lerobot_sim2real/scripts/train_ppo_rgb.py",
|
|
"expected_blob": "af900d1e247349b61b707b4a63d30e0d297c9ea9",
|
|
"found_blob": "af900d1e247349b61b707b4a63d30e0d297c9ea9",
|
|
"passed": true
|
|
}
|
|
]
|
|
},
|
|
"runtime": {
|
|
"python": "3.11.4",
|
|
"mani_skill_importable": false,
|
|
"nvidia_smi": null,
|
|
"apple_mps_available": true,
|
|
"upstream_training_backend": "CUDA (the pinned PPO implementation sets device cuda when available and the documented setup requires NVIDIA >=8GB)"
|
|
},
|
|
"stages": {
|
|
"1": {
|
|
"name": "environment_alignment",
|
|
"robot_actuation_required": true,
|
|
"reference_asset_verified": {
|
|
"path": "docs/assets/camera_alignment_step_1.2.png",
|
|
"sha256": "195d35f2f944345db9d21215d7bbf1745370605c20959cff315293ebcd58415c",
|
|
"width": 1260,
|
|
"height": 1260,
|
|
"channels": 3,
|
|
"mean_rgb": [
|
|
144.2132,
|
|
117.0811,
|
|
103.9883
|
|
],
|
|
"pixel_stddev": 33.3767
|
|
},
|
|
"local_upstream_invocation": {
|
|
"command": [
|
|
"/Users/boj/miniconda3/bin/python",
|
|
"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/camera_alignment.py",
|
|
"--help"
|
|
],
|
|
"return_code": 1,
|
|
"timed_out": false,
|
|
"output": "Traceback (most recent call last):\n File \"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/camera_alignment.py\", line 7, in <module>\n from mani_skill.utils.wrappers.flatten import FlattenRGBDObservationWrapper\nModuleNotFoundError: No module named 'mani_skill'\n"
|
|
},
|
|
"complete": false,
|
|
"blocker": "No authorized/calibrated SO-100 camera run or ManiSkill runtime. The pinned script connects the robot and calls real_env.reset(), so only --help was probed; the verified image is upstream reference evidence, not this host's alignment."
|
|
},
|
|
"2": {
|
|
"name": "background_replacement",
|
|
"robot_actuation_required": false,
|
|
"reference_asset_verified": {
|
|
"path": "docs/assets/camera_alignment_step_1.3.png",
|
|
"sha256": "f8e79ebf6f727dc703d091978af60b04563b8eb37ee4360df14809dd36c75503",
|
|
"width": 1260,
|
|
"height": 1260,
|
|
"channels": 3,
|
|
"mean_rgb": [
|
|
113.6085,
|
|
114.9122,
|
|
112.5164
|
|
],
|
|
"pixel_stddev": 57.1852
|
|
},
|
|
"local_upstream_invocation": {
|
|
"command": [
|
|
"/Users/boj/miniconda3/bin/python",
|
|
"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/capture_background_image.py",
|
|
"--help"
|
|
],
|
|
"return_code": 1,
|
|
"timed_out": false,
|
|
"output": "Traceback (most recent call last):\n File \"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/capture_background_image.py\", line 3, in <module>\n from mani_skill.utils.wrappers.flatten import FlattenRGBDObservationWrapper\nModuleNotFoundError: No module named 'mani_skill'\n"
|
|
},
|
|
"complete": false,
|
|
"blocker": "No local empty-scene background capture or ManiSkill runtime; the verified composite is upstream reference evidence, not a local composite."
|
|
},
|
|
"3": {
|
|
"name": "domain_randomization_and_real_dynamics_calibration",
|
|
"robot_actuation_required": false,
|
|
"real_dynamics_measurement": {
|
|
"path": "system_id_so100.npy",
|
|
"sha256": "4ca6cc4cd5c26540685d54e2cd2babde2204d0d3f369a63b5e817b1e7cf381db",
|
|
"source": "real SO-100 system-identification capture committed by the pinned upstream",
|
|
"samples": 139,
|
|
"joints": 6,
|
|
"qpos_dtype": "float32",
|
|
"target_qpos_dtype": "float32",
|
|
"mean_absolute_tracking_error_by_joint": [
|
|
0.09687472,
|
|
0.13199401,
|
|
0.14799425,
|
|
0.0692635,
|
|
0.11893595,
|
|
0.0782366
|
|
],
|
|
"max_absolute_tracking_error_by_joint": [
|
|
0.18611592,
|
|
0.23677669,
|
|
0.22161102,
|
|
0.18297092,
|
|
0.18330097,
|
|
0.19700873
|
|
],
|
|
"best_tracking_lag_samples_by_joint": [
|
|
3,
|
|
4,
|
|
4,
|
|
4,
|
|
3,
|
|
3
|
|
],
|
|
"sample_period_seconds": null,
|
|
"note": "The upstream artifact contains no timestamps, so lag is reported in samples and is not converted to milliseconds."
|
|
},
|
|
"local_upstream_invocation": {
|
|
"command": [
|
|
"/Users/boj/miniconda3/bin/python",
|
|
"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/record_reset_distribution.py",
|
|
"--help"
|
|
],
|
|
"return_code": 1,
|
|
"timed_out": false,
|
|
"output": "Traceback (most recent call last):\n File \"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/record_reset_distribution.py\", line 5, in <module>\n from mani_skill.utils.wrappers.record import RecordEpisode\nModuleNotFoundError: No module named 'mani_skill'\n"
|
|
},
|
|
"complete": false,
|
|
"blocker": "Pinned real dynamics were measured, but randomized ManiSkill resets could not execute without ManiSkill/NVIDIA and the required visual/physical ranges were not locally evaluated."
|
|
},
|
|
"4": {
|
|
"name": "rgb_only_ppo_training_and_evaluation",
|
|
"robot_actuation_required": false,
|
|
"local_upstream_invocation": {
|
|
"command": [
|
|
"/Users/boj/miniconda3/bin/python",
|
|
"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/train_ppo_rgb.py",
|
|
"--help"
|
|
],
|
|
"return_code": 1,
|
|
"timed_out": false,
|
|
"output": "Traceback (most recent call last):\n File \"/tmp/lerobot-sim2real-audit-20260729/lerobot_sim2real/scripts/train_ppo_rgb.py\", line 6, in <module>\n import tyro\nModuleNotFoundError: No module named 'tyro'\n"
|
|
},
|
|
"complete": false,
|
|
"simulation_success_rate": null,
|
|
"blocker": "No importable ManiSkill or NVIDIA CUDA runtime; no PPO checkpoint or >90% direct evaluation exists on this host. Apple MPS is not a proven substitute for this pinned CUDA path."
|
|
},
|
|
"5": {
|
|
"name": "zero_shot_real_world_deployment",
|
|
"robot_actuation_required": true,
|
|
"complete": false,
|
|
"blocker": "No SO-100, authorized operator, calibrated workspace, E-stop, observer, or stage-4 checkpoint; no actuation was attempted."
|
|
}
|
|
},
|
|
"actuation_attempted": false
|
|
}
|