{
  "press_by_number-s0": {
    "id": "press_by_number-s0",
    "task": "press_by_number",
    "seed": 0,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Read cards 1 and 9 in head RGB. Press the left red button once and release; use the previously calibrated robot-frame button reach.",
        "submitted_actions": 93,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0001",
        "reason": "Left red button is released after one press. Confirm with blue, then press the central red button nine times as read from the card.",
        "submitted_actions": 263,
        "primitive_counts": {
          "move": 22
        }
      },
      {
        "request": "0002",
        "reason": "Nine central red cycles have completed; press blue a second time, then obtain current robot state before returning home.",
        "submitted_actions": 28,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0003",
        "reason": "Both numbered input groups and both confirmations have been executed. Return both arms and grippers to their observed initial states.",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "press_by_number-s1": {
    "id": "press_by_number-s1",
    "task": "press_by_number",
    "seed": 1,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Head RGB shows cards 9 and 6. Start with nine complete left-red press/release cycles.",
        "submitted_actions": 237,
        "primitive_counts": {
          "move": 19
        }
      },
      {
        "request": "0001",
        "reason": "Nine left-red cycles are complete and the button is released. Confirm blue, then press central red six times from the observed second card.",
        "submitted_actions": 237,
        "primitive_counts": {
          "move": 19
        }
      },
      {
        "request": "0002",
        "reason": "Both numbered input groups and both confirmations have been executed. Return both arms and grippers to their observed initial states.",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "press_by_number-s2": {
    "id": "press_by_number-s2",
    "task": "press_by_number",
    "seed": 2,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Head RGB shows cards 1 and 5. Press the left red button once and release before confirmation.",
        "submitted_actions": 93,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0001",
        "reason": "One left-red cycle is complete. Confirm blue, press central red five times, and confirm again.",
        "submitted_actions": 219,
        "primitive_counts": {
          "move": 17
        }
      },
      {
        "request": "0002",
        "reason": "Both numbered input groups and both confirmations have been executed. Return both arms and grippers to their observed initial states.",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "general_pickup-s0": {
    "id": "general_pickup-s0",
    "task": "general_pickup",
    "seed": 0,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB instruction identifies mint-green scissors at the right. Estimate the neck position from pixel (490,215), the public camera calibration and a tabletop-height assumption; align the jaws across the scissors.",
        "submitted_actions": 58,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0001",
        "reason": "Wrist RGB shows the scissors blade between the open jaws. Close the right gripper and lift 14 cm, then inspect whether the scissors move with it.",
        "submitted_actions": 42,
        "primitive_counts": {
          "grip": 1,
          "move": 1
        }
      },
      {
        "request": "0002",
        "reason": "Head RGB shows the first lift left the scissors on the table. Retry once within the native step budget at the visible blade, lowering the grasp plane for this thin object.",
        "submitted_actions": 86,
        "primitive_counts": {
          "grip": 2,
          "move": 2
        }
      }
    ]
  },
  "general_pickup-s1": {
    "id": "general_pickup-s1",
    "task": "general_pickup",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB instruction identifies brown headphones. Target the visible headband at pixel (381,163), using an explicitly estimated headband height and public camera calibration.",
        "submitted_actions": 58,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0001",
        "reason": "Robot proprioception shows the vertical target was not reached. Use a forward/downward tilted grasp to keep the wrist nearer the robot while the fingers reach the visible headband.",
        "submitted_actions": 30,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0002",
        "reason": "Wrist RGB shows the current grasp spans bulky earcups. Re-estimate the thin rear headband at pixel (377,159) near the tabletop, use a 45-degree forward/down grasp, close and lift.",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The headphones remained on the table after the lift. Within the remaining native step budget, make one final grasp with the headband height/forward offset corrected from the current head RGB.",
        "submitted_actions": 33,
        "primitive_counts": {
          "grip": 2,
          "move": 2
        }
      }
    ]
  },
  "general_pickup-s2": {
    "id": "general_pickup-s2",
    "task": "general_pickup",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB instruction identifies the wooden owl. Target its central body at pixel (328,207) with a visual height estimate and an open top-down grasp.",
        "submitted_actions": 58,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0001",
        "reason": "Robot proprioception shows the vertical wrist target was not reached. Tilt the fingers forward/downward and move the wrist nearer the robot to reach the owl body seen in RGB.",
        "submitted_actions": 30,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0002",
        "reason": "Wrist RGB places the owl body between the open fingers and proprioception confirms the tilted pose was reached. Close the left gripper and lift 15 cm.",
        "submitted_actions": 45,
        "primitive_counts": {
          "grip": 1,
          "move": 1
        }
      },
      {
        "request": "0003",
        "reason": "The owl remained on the table. Correct the visually estimated grasp lower on the body and slightly forward, then close and lift within the remaining native step budget.",
        "submitted_actions": 70,
        "primitive_counts": {
          "grip": 2,
          "move": 2
        }
      }
    ]
  },
  "push_T-s0": {
    "id": "push_T-s0",
    "task": "push_T",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB shows the red T left of the gray pad. First translate it toward the pad using a closed fingertip against its left edge; orientation will be checked after contact.",
        "submitted_actions": 143,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0001",
        "reason": "Use the updated RGB block position after its rotation. Reposition behind the block relative to the gray target and make a shorter corrective push, then lift clear for another observation.",
        "submitted_actions": 95,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "The new RGB view shows the red T now has approximately the gray pad orientation. Push along its stem toward the pad to translate while minimizing additional torque.",
        "submitted_actions": 104,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0003",
        "reason": "RGB shows the previous stroke missed the narrow stem. Correct the approach line to pass through the visible stem tip, preserving the approximately correct orientation.",
        "submitted_actions": 105,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0004",
        "reason": "The block is closer to the pad but its stem points the wrong way. Push the visible stem tip left to rotate it counterclockwise before the final translation.",
        "submitted_actions": 70,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0005",
        "reason": "The red and gray T orientations are close again. Make the final rightward translation by contacting the crossbar at its center height in the image, then withdraw; all remaining native steps are retained.",
        "submitted_actions": 89,
        "primitive_counts": {
          "move": 4,
          "hold": 1
        }
      }
    ]
  },
  "push_T-s1": {
    "id": "push_T-s1",
    "task": "push_T",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB shows the T on the right and its pad on the left. Push from the right edge toward the table center first, staying within the right arm workspace.",
        "submitted_actions": 143,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0001",
        "reason": "Use the updated RGB block position after its rotation. Reposition behind the block relative to the gray target and make a shorter corrective push, then lift clear for another observation.",
        "submitted_actions": 95,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "The T is still right of the pad with its stem pointing upward. Push near the stem's upper-right edge toward the left to induce the needed rotation while translating.",
        "submitted_actions": 104,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0003",
        "reason": "RGB shows the T now points left but still needs left translation and a modest turn. Retract the right arm; use the left arm with an X-tilted fingertip to push the right crossbar toward the gray pad.",
        "submitted_actions": 136,
        "primitive_counts": {
          "move": 5
        }
      },
      {
        "request": "0004",
        "reason": "The prior left-arm stroke did not translate the block. Use the right arm leaning left so the fingertip can reach across the center; push the upper right crossbar left toward the target.",
        "submitted_actions": 102,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0005",
        "reason": "The block remains outside the target after the attempted pushes, and only about twenty native steps remain. Return the arms toward their initial state; retain the episode as a failure if native evaluation does not succeed.",
        "submitted_actions": 30,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "push_T-s2": {
    "id": "push_T-s2",
    "task": "push_T",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB shows the T on the right and its pad on the left. Push its right-side crossbar toward the center before making a visual alignment correction.",
        "submitted_actions": 143,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0001",
        "reason": "Use the updated RGB block position after its rotation. Reposition behind the block relative to the gray target and make a shorter corrective push, then lift clear for another observation.",
        "submitted_actions": 95,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "The T near the center needs a clockwise turn before translating left. Push the visible stem end toward the robot; use a tilted finger pose so the wrist stays reachable.",
        "submitted_actions": 104,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0003",
        "reason": "The visible T orientation is now close to the gray target, but it remains to the right. Retract the right arm and translate left with a reachable tilted left fingertip, then inspect alignment.",
        "submitted_actions": 136,
        "primitive_counts": {
          "move": 5
        }
      },
      {
        "request": "0004",
        "reason": "The T is near its target but still rotated. Push the exposed stem end toward the robot to turn it clockwise; keep the wrist back using the known tilted tool geometry.",
        "submitted_actions": 62,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0005",
        "reason": "Wrist RGB shows the red T adjacent to the gray pad with a residual angular error. Make one final left-and-forward push from below the stem end, then withdraw and let the native step limit conclude the trial.",
        "submitted_actions": 68,
        "primitive_counts": {
          "move": 4,
          "hold": 1
        }
      }
    ]
  },
  "stack_bowls-s0": {
    "id": "stack_bowls-s0",
    "task": "stack_bowls",
    "seed": 0,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "从头部 RGB 估计左侧碗前缘，用夹爪夹住碗沿并抬起；高度为视觉估计。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认碗已抬起；将碗沿抓取点移至目标碗中心前侧并降低、松爪，尝试套叠。",
        "submitted_actions": 127,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "已见两只碗套叠。左臂让开，右臂从剩余碗前缘抓取并抬起。",
        "submitted_actions": 145,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "右爪已抓起最后一只碗，放入中央已叠放的两只碗。",
        "submitted_actions": 120,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "RGB 显示三碗已套叠；撤回双臂，等待原生成功判定。",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "stack_bowls-s1": {
    "id": "stack_bowls-s1",
    "task": "stack_bowls",
    "seed": 1,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "从头部 RGB 估计左侧碗前缘，用夹爪夹住碗沿并抬起；高度为视觉估计。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认碗已抬起；将碗沿抓取点移至目标碗中心前侧并降低、松爪，尝试套叠。",
        "submitted_actions": 127,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "已见两只碗套叠。左臂让开，右臂从剩余碗前缘抓取并抬起。",
        "submitted_actions": 145,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "右侧碗仍在桌面，前次抓取未成功。根据可见前缘稍向近侧、下方调整后再抓取。",
        "submitted_actions": 100,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "剩余碗已抬起，将其套入中央双碗，再撤开右臂。",
        "submitted_actions": 104,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "RGB 显示三碗套叠，双臂归位以完成原生终止条件。",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "stack_bowls-s2": {
    "id": "stack_bowls-s2",
    "task": "stack_bowls",
    "seed": 2,
    "score": 15.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "从头部 RGB 估计左侧碗前缘，用夹爪夹住碗沿并抬起；高度为视觉估计。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认碗已抬起；将碗沿抓取点移至目标碗中心前侧并降低、松爪，尝试套叠。",
        "submitted_actions": 127,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "搬运未达到目标，碗落回左侧；重新夹持可见前缘，将基底碗移到双臂更容易接近的桌面中央。",
        "submitted_actions": 198,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "基底碗已移到中央。右手抓起右侧近处碗的前缘并抬起。",
        "submitted_actions": 110,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "右侧碗已抓住，将其放入中央基底；随后按当前 RGB 的后侧碗前缘位置抓取第三只碗，搬至同一基底。",
        "submitted_actions": 203,
        "primitive_counts": {
          "move": 8,
          "grip": 3
        }
      },
      {
        "request": "0005",
        "reason": "第三只碗从搬运中滑落到桌前，剩余步数很少。按可见前缘做最后一次抓取并朝中央双碗放置。",
        "submitted_actions": 118,
        "primitive_counts": {
          "move": 5,
          "grip": 2,
          "hold": 1
        }
      }
    ]
  },
  "fold_clothes-s0": {
    "id": "fold_clothes-s0",
    "task": "fold_clothes",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB 显示摊开的长袖上衣。先夹住左袖口，稍抬离桌面以准备向衣身内折。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "三幅 RGB 均显示左袖口随爪抬起。将左袖折向衣身内侧后松爪，再抓取右袖口。",
        "submitted_actions": 203,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "右袖已抓住；将其向衣身左侧内折，放下后让开相机视野以重新定位下摆。",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "两侧袖子已向内，但部分衣身出现褶皱。根据当前可见下摆两侧位置分别夹持，准备将下半部向上折。",
        "submitted_actions": 164,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "fold_clothes-s1": {
    "id": "fold_clothes-s1",
    "task": "fold_clothes",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB 显示摊开的长袖上衣。先夹住左袖口，稍抬离桌面以准备向衣身内折。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "三幅 RGB 均显示左袖口随爪抬起。将左袖折向衣身内侧后松爪，再抓取右袖口。",
        "submitted_actions": 203,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "右袖已抓住；将其向衣身左侧内折，放下后让开相机视野以重新定位下摆。",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "两侧袖子已向内，但部分衣身出现褶皱。根据当前可见下摆两侧位置分别夹持，准备将下半部向上折。",
        "submitted_actions": 164,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "fold_clothes-s2": {
    "id": "fold_clothes-s2",
    "task": "fold_clothes",
    "seed": 2,
    "score": 20.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "RGB 显示摊开的长袖上衣。先夹住左袖口，稍抬离桌面以准备向衣身内折。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "三幅 RGB 均显示左袖口随爪抬起。将左袖折向衣身内侧后松爪，再抓取右袖口。",
        "submitted_actions": 203,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "右袖已抓住；将其向衣身左侧内折，放下后让开相机视野以重新定位下摆。",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "两侧袖子已向内，但部分衣身出现褶皱。根据当前可见下摆两侧位置分别夹持，准备将下半部向上折。",
        "submitted_actions": 164,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "pour_liquid_into_cup-s0": {
    "id": "pour_liquid_into_cup-s0",
    "task": "pour_liquid_into_cup",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中瓶底与瓶颈的垂直关系估计瓶颈位置，夹住瓶颈后提起，准备朝杯口倾倒。",
        "submitted_actions": 103,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示瓶子已被夹持并离开桌面。按杯口中心估计，将瓶口移至杯上方并向右倾倒。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0002",
        "reason": "本体反馈显示原倾倒姿态未到达。降低腕部后改为向机器人方向倾倒，使腕部保持在较近的可达区域。",
        "submitted_actions": 114,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0003",
        "reason": "倾倒已发生，但 RGB 显示杯外有明显溅液。将瓶子转回直立、放下并松爪，避免继续倾倒。",
        "submitted_actions": 33,
        "primitive_counts": {
          "move": 1,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "瓶子已放下，双臂归位并等待原生终止。",
        "submitted_actions": 60,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "pour_liquid_into_cup-s1": {
    "id": "pour_liquid_into_cup-s1",
    "task": "pour_liquid_into_cup",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中瓶底与瓶颈的垂直关系估计瓶颈位置，夹住瓶颈后提起，准备朝杯口倾倒。",
        "submitted_actions": 103,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示瓶子已被夹持并离开桌面。按杯口中心估计，将瓶口移至杯上方并向右倾倒。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0002",
        "reason": "原倾倒姿态未执行且瓶子落回桌面。重新抓取瓶颈后，改用腕部更靠近机器人的反向倾倒姿态。",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "瓶子滑落，未形成有效入杯倾倒；原生预算将结束，撤回双臂并记录失败过程。",
        "submitted_actions": 60,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "pour_liquid_into_cup-s2": {
    "id": "pour_liquid_into_cup-s2",
    "task": "pour_liquid_into_cup",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中瓶底与瓶颈的垂直关系估计瓶颈位置，夹住瓶颈后提起，准备朝杯口倾倒。",
        "submitted_actions": 103,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示瓶子已被夹持并离开桌面。按杯口中心估计，将瓶口移至杯上方并向右倾倒。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0002",
        "reason": "本体反馈显示原倾倒姿态未到达。降低腕部后改为向机器人方向倾倒，使腕部保持在较近的可达区域。",
        "submitted_actions": 114,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0003",
        "reason": "瓶子滑落且杯子被碰倒，已无法在剩余步数内完成，撤回双臂并保留原生结果。",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "deposit_coin-s0": {
    "id": "deposit_coin-s0",
    "task": "deposit_coin",
    "seed": 0,
    "score": 20.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "硬币与存钱罐分处两侧。先用外侧机械臂将存钱罐向桌面中央推近，再按 RGB 估计位置夹取硬币。",
        "submitted_actions": 166,
        "primitive_counts": {
          "move": 7,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "腕部 RGB 确认硬币仍在支架中，存钱罐未被推动。修正硬币高度重新夹取；两侧相隔较远的 seed 改用侧向伸指，尝试在保持硬币竖直的同时接近投币口。",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "已接近投币口，但硬币被夹爪遮挡无法确认是否仍夹持。小幅下压并松爪，交由原生判定。",
        "submitted_actions": 70,
        "primitive_counts": {
          "move": 1,
          "grip": 1,
          "hold": 1
        }
      }
    ]
  },
  "deposit_coin-s1": {
    "id": "deposit_coin-s1",
    "task": "deposit_coin",
    "seed": 1,
    "score": 20.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 估计硬币及支架位置，沿硬币面的法向夹持并抬起。",
        "submitted_actions": 74,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "腕部 RGB 确认硬币仍在支架中，存钱罐未被推动。修正硬币高度重新夹取；两侧相隔较远的 seed 改用侧向伸指，尝试在保持硬币竖直的同时接近投币口。",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "硬币从支架取出后滑落在桌面。剩余预算允许一次平放硬币的重新抓取；抬起后旋转为竖直，侧向放入左侧投币口。",
        "submitted_actions": 122,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "完成最后一次投币尝试后归位，等待原生终止。",
        "submitted_actions": 55,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "deposit_coin-s2": {
    "id": "deposit_coin-s2",
    "task": "deposit_coin",
    "seed": 2,
    "score": 20.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "硬币与存钱罐分处两侧。先用外侧机械臂将存钱罐向桌面中央推近，再按 RGB 估计位置夹取硬币。",
        "submitted_actions": 166,
        "primitive_counts": {
          "move": 7,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "腕部 RGB 确认硬币仍在支架中，存钱罐未被推动。修正硬币高度重新夹取；两侧相隔较远的 seed 改用侧向伸指，尝试在保持硬币竖直的同时接近投币口。",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "硬币已滑落，跨桌搬运姿态也未完全到达。在剩余原生步数内无法完成重新抓取和精密插入，撤回双臂并保留失败。",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "insert_key-s0": {
    "id": "insert_key-s0",
    "task": "insert_key",
    "seed": 0,
    "score": 15.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中的钥匙齿杆位置拾取，保留圆形柄供另一只手接取；抬起后移到双臂之间。",
        "submitted_actions": 98,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "钥匙仍在桌面，细齿杆未形成稳定夹持。改抓较宽的圆形柄，再将其移至交接位置。",
        "submitted_actions": 74,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "RGB 显示钥匙已随圆柄抓取抬起。另一只手从近侧水平接近圆柄，以不同夹持方向接取；先闭合接收爪，再松开原爪。",
        "submitted_actions": 72,
        "primitive_counts": {
          "move": 3,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "换手后钥匙被爪部遮挡，无法确认稳定夹持；按最后可见的钥匙方向尝试对准孔位、下插和转动，结果以原生判定为准。",
        "submitted_actions": 65,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      }
    ]
  },
  "insert_key-s1": {
    "id": "insert_key-s1",
    "task": "insert_key",
    "seed": 1,
    "score": 15.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中的钥匙齿杆位置拾取，保留圆形柄供另一只手接取；抬起后移到双臂之间。",
        "submitted_actions": 98,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "钥匙仍在桌面，细齿杆未形成稳定夹持。改抓较宽的圆形柄，再将其移至交接位置。",
        "submitted_actions": 74,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "RGB 显示钥匙已随圆柄抓取抬起。另一只手从近侧水平接近圆柄，以不同夹持方向接取；先闭合接收爪，再松开原爪。",
        "submitted_actions": 72,
        "primitive_counts": {
          "move": 3,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "接收爪的腕部 RGB 未显示钥匙，交接未得到确认；剩余预算不足以重新完成拾取、换手、插入和转动，归位并保留原生失败。",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "insert_key-s2": {
    "id": "insert_key-s2",
    "task": "insert_key",
    "seed": 2,
    "score": 15.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 中的钥匙齿杆位置拾取，保留圆形柄供另一只手接取；抬起后移到双臂之间。",
        "submitted_actions": 98,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "钥匙仍在桌面，细齿杆未形成稳定夹持。改抓较宽的圆形柄，再将其移至交接位置。",
        "submitted_actions": 74,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "RGB 显示钥匙已随圆柄抓取抬起。另一只手从近侧水平接近圆柄，以不同夹持方向接取；先闭合接收爪，再松开原爪。",
        "submitted_actions": 72,
        "primitive_counts": {
          "move": 3,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "接收爪之间可见白色物体但夹持不确定；按最后可见的钥匙齿杆朝向转为竖直，对准孔位尝试插入并转动。",
        "submitted_actions": 65,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      }
    ]
  },
  "insert_tubes-s0": {
    "id": "insert_tubes-s0",
    "task": "insert_tubes",
    "seed": 0,
    "score": 20.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 估计左侧试管靠近管帽处的位置与管轴方向，用与管轴垂直的夹持方向抓取并抬起。",
        "submitted_actions": 77,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认第一根试管已抬起。保持管帽朝上，把管轴转成竖直，按架子左前方可见孔位缓慢插入并释放。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "第一根未入孔。依据架脚与桌面重新估计架面高度，抓起右后方试管，先转成竖直停在孔上方检查。",
        "submitted_actions": 96,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "前两个 seed 的试管已竖直，管轴在目标孔上方；第三个被左臂遮挡。先撤开左臂，再沿竖直方向降低试管、松爪和退开。",
        "submitted_actions": 81,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "第二根仍落在架前。按修正后的架面高度，对最后一根原始试管再做竖直插入尝试。",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "三根均已尝试操作，剩余十步，归位并接受原生终止。",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "insert_tubes-s1": {
    "id": "insert_tubes-s1",
    "task": "insert_tubes",
    "seed": 1,
    "score": 40.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 估计左侧试管靠近管帽处的位置与管轴方向，用与管轴垂直的夹持方向抓取并抬起。",
        "submitted_actions": 77,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认第一根试管已抬起。保持管帽朝上，把管轴转成竖直，按架子左前方可见孔位缓慢插入并释放。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "第一根未入孔。依据架脚与桌面重新估计架面高度，抓起右后方试管，先转成竖直停在孔上方检查。",
        "submitted_actions": 96,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "前两个 seed 的试管已竖直，管轴在目标孔上方；第三个被左臂遮挡。先撤开左臂，再沿竖直方向降低试管、松爪和退开。",
        "submitted_actions": 81,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "RGB 显示第二根试管已经直立留在架孔中。抓取最后一根原始试管，按同一高度估计插入右前侧空孔。",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "最后一根插入尝试结束，剩余十步，归位并接受原生终止。",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "insert_tubes-s2": {
    "id": "insert_tubes-s2",
    "task": "insert_tubes",
    "seed": 2,
    "score": 40.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按 RGB 估计左侧试管靠近管帽处的位置与管轴方向，用与管轴垂直的夹持方向抓取并抬起。",
        "submitted_actions": 77,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 确认第一根试管已抬起。保持管帽朝上，把管轴转成竖直，按架子左前方可见孔位缓慢插入并释放。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "第一根未入孔。依据架脚与桌面重新估计架面高度，抓起右后方试管，先转成竖直停在孔上方检查。",
        "submitted_actions": 96,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "前两个 seed 的试管已竖直，管轴在目标孔上方；第三个被左臂遮挡。先撤开左臂，再沿竖直方向降低试管、松爪和退开。",
        "submitted_actions": 81,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "RGB 显示第二根试管已经直立留在架孔中。抓取最后一根原始试管，按同一高度估计插入右前侧空孔。",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "最后一根插入尝试结束，剩余十步，归位并接受原生终止。",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "play_Xylophone-s0": {
    "id": "play_Xylophone-s0",
    "task": "play_Xylophone",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按指令使用木槌，从柄部靠末端处抓取并抬起；将槌头转向琴键，停在最左侧红键上方检查。",
        "submitted_actions": 115,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示木槌仍在支架上，细柄夹持失败。改夹住较宽的球形槌头上半部，使球头底部露出用于敲击。",
        "submitted_actions": 82,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "球头仍在桌面，前次夹持未带起。依据最新 RGB 修正球心位置，并采用向前倾斜、较低的夹取姿态包住球头。",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "腕部 RGB 仍显示木槌未被夹住。两处槌头靠支架，按较高球心平面修正横向位置，做最后一次倾斜抓取。",
        "submitted_actions": 52,
        "primitive_counts": {
          "move": 2,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "四次抓取调整后，RGB 与零夹持反馈仍显示木槌未提起，无法完成使用木槌的敲击要求。撤回双臂并保留本轮原生失败，不以空爪代替木槌。",
        "submitted_actions": 230,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "play_Xylophone-s1": {
    "id": "play_Xylophone-s1",
    "task": "play_Xylophone",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按指令使用木槌，从柄部靠末端处抓取并抬起；将槌头转向琴键，停在最左侧红键上方检查。",
        "submitted_actions": 115,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示木槌仍在支架上，细柄夹持失败。改夹住较宽的球形槌头上半部，使球头底部露出用于敲击。",
        "submitted_actions": 82,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "球头仍在桌面，前次夹持未带起。依据最新 RGB 修正球心位置，并采用向前倾斜、较低的夹取姿态包住球头。",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "腕部 RGB 仍显示木槌未被夹住。两处槌头靠支架，按较高球心平面修正横向位置，做最后一次倾斜抓取。",
        "submitted_actions": 52,
        "primitive_counts": {
          "move": 2,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "四次抓取调整后，RGB 与零夹持反馈仍显示木槌未提起，无法完成使用木槌的敲击要求。撤回双臂并保留本轮原生失败，不以空爪代替木槌。",
        "submitted_actions": 230,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "play_Xylophone-s2": {
    "id": "play_Xylophone-s2",
    "task": "play_Xylophone",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "按指令使用木槌，从柄部靠末端处抓取并抬起；将槌头转向琴键，停在最左侧红键上方检查。",
        "submitted_actions": 115,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示木槌仍在支架上，细柄夹持失败。改夹住较宽的球形槌头上半部，使球头底部露出用于敲击。",
        "submitted_actions": 82,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "球头仍在桌面，前次夹持未带起。依据最新 RGB 修正球心位置，并采用向前倾斜、较低的夹取姿态包住球头。",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "RGB 与夹爪反馈确认木槌已提起。保持球头底部朝下，按可见八枚琴键的左到右顺序逐一接近、下击、抬起。",
        "submitted_actions": 242,
        "primitive_counts": {
          "move": 24
        }
      }
    ]
  },
  "fill_egg_holder-s0": {
    "id": "fill_egg_holder-s0",
    "task": "fill_egg_holder",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求搬运四枚鸡蛋并合盖。先抓取篮中靠近机器人、较易接近的一枚鸡蛋，夹持开度略缩小以避开相邻鸡蛋。",
        "submitted_actions": 88,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示第一枚鸡蛋已抬起。放入蛋托左前凹槽，撤起夹爪后抓取篮中下一枚靠前鸡蛋。",
        "submitted_actions": 134,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "第一枚在放置后滚出凹槽。第二枚降低释放高度并轻微补偿横向位置；随后拾取桌上滚出的第一枚进行恢复。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "右臂未完成上抬，当前抓持点仍接近桌面。先向中央较近区域平缓抬升，再把恢复的鸡蛋放入左前凹槽，继续抓取篮中右侧鸡蛋。",
        "submitted_actions": 119,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "恢复的鸡蛋再次未留在凹槽中。将当前确实抓住的鸡蛋停在目标槽上方，在松爪前用新图像和末端状态核验实际位置。",
        "submitted_actions": 33,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0005",
        "reason": "松爪前观察已确认鸡蛋在搬运中滑落。改用更近的左臂取桌面鸡蛋，保留小幅夹爪开度以减小挤压，分开抬升和慢速平移，再降低到槽内释放。",
        "submitted_actions": 186,
        "primitive_counts": {
          "move": 7,
          "grip": 2
        }
      },
      {
        "request": "0006",
        "reason": "慢速、较小夹持压力的恢复使一枚鸡蛋留在凹槽中，但仍有三枚未装入；剩余步数不足以完成，归位接受原生结果。",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "fill_egg_holder-s1": {
    "id": "fill_egg_holder-s1",
    "task": "fill_egg_holder",
    "seed": 1,
    "score": 10.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求搬运四枚鸡蛋并合盖。先抓取篮中靠近机器人、较易接近的一枚鸡蛋，夹持开度略缩小以避开相邻鸡蛋。",
        "submitted_actions": 88,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示第一枚鸡蛋已抬起。放入蛋托左前凹槽，撤起夹爪后抓取篮中下一枚靠前鸡蛋。",
        "submitted_actions": 134,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "第一枚在放置后滚出凹槽。第二枚降低释放高度并轻微补偿横向位置；随后拾取桌上滚出的第一枚进行恢复。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "已放置的一枚在右前凹槽；将恢复的鸡蛋放入左前凹槽，按图像修正夹持偏心，再取篮中右侧鸡蛋。",
        "submitted_actions": 119,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "恢复的鸡蛋再次未留在凹槽中。将当前确实抓住的鸡蛋停在目标槽上方，在松爪前用新图像和末端状态核验实际位置。",
        "submitted_actions": 33,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0005",
        "reason": "松爪前观察已确认鸡蛋在搬运中滑落。改用更近的左臂取桌面鸡蛋，保留小幅夹爪开度以减小挤压，分开抬升和慢速平移，再降低到槽内释放。",
        "submitted_actions": 165,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0006",
        "reason": "恢复后已有两枚鸡蛋留在凹槽中，另外两枚仍未装入；剩余步数不足以完成四枚与合盖，归位接受原生结果。",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "fill_egg_holder-s2": {
    "id": "fill_egg_holder-s2",
    "task": "fill_egg_holder",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求搬运四枚鸡蛋并合盖。先抓取篮中靠近机器人、较易接近的一枚鸡蛋，夹持开度略缩小以避开相邻鸡蛋。",
        "submitted_actions": 88,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "RGB 显示第一枚鸡蛋已抬起。放入蛋托左前凹槽，撤起夹爪后抓取篮中下一枚靠前鸡蛋。",
        "submitted_actions": 134,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "第一枚已在凹槽中，第二枚放入右前凹槽；降低释放高度后继续取篮中下一枚。",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "RGB 中鸡蛋已离开当前视野，右臂本体状态明显偏离目标。使用原始关节姿态平缓归位，不重置场景，随后检查是否仍可继续。",
        "submitted_actions": 80,
        "primitive_counts": {
          "home": 1
        }
      },
      {
        "request": "0004",
        "reason": "归位后鸡蛋仍不在标准相机可见范围内，机械臂也未正常回到初始状态。本轮无法继续完成，保持当前位置至原生结束，并标记控制/物理异常供后续复核。",
        "submitted_actions": 400,
        "primitive_counts": {
          "hold": 1
        }
      }
    ]
  },
  "fill_pen_holder-s0": {
    "id": "fill_pen_holder-s0",
    "task": "fill_pen_holder",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求一手持笔筒、另一手逐支装笔。右手从侧面夹持笔筒外壁，保持上方开口可用，抬起后移到双臂之间。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "右手已从侧面提起笔筒并保持开口。左手抓取第一支紫色粗笔靠近上端处，准备竖直装入。",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "第一支粗笔已提起，右手仍持筒。把笔转为竖直，降低到笔筒开口内再松爪。",
        "submitted_actions": 97,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "紫色笔在筒口附近，先撤开左爪让其稳定，再抓取第二支蓝色粗笔。",
        "submitted_actions": 110,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "紫色笔靠在筒口前缘；当前蓝笔已提起。按可见偏差缩短腕部到笔轴的估计距离，将蓝笔对准开口中央竖直释放。",
        "submitted_actions": 102,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "前次笔落在筒口外侧。右爪略收紧以稳定筒体，左爪抓取较近粗笔；竖直移至开口上方后暂停检查，不立即释放。",
        "submitted_actions": 133,
        "primitive_counts": {
          "grip": 2,
          "move": 4
        }
      },
      {
        "request": "0006",
        "reason": "腕部 RGB 与夹持反馈显示粗笔再次滑落。改尝试第三支白色笔，夹持较粗上端，抬起后转成竖直再放入笔筒。",
        "submitted_actions": 177,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0007",
        "reason": "Head RGB shows previously released pens outside the holder. Grasp the remaining black-and-gold pen near its thicker cap, using a visually estimated table plane; verify retention after lifting before insertion.",
        "submitted_actions": 76,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0008",
        "reason": "Both black-and-gold pens remain between the jaws in RGB after lifting. Rotate the grasp so the cap points upward, and position above the visible holder opening; stop for visual alignment before release.",
        "submitted_actions": 56,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0009",
        "reason": "RGB shows the black pen tilted outward after wrist rotation. Apply an estimated corrective tilt toward vertical, lower its tip into the visible mouth and release; only the remaining native budget is available.",
        "submitted_actions": 72,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0010",
        "reason": "The black pen is no longer outside in the head image, but the other pens remain on the table. Remaining native steps are insufficient for all pens; lower the held holder onto the table and release it without resetting the trial.",
        "submitted_actions": 67,
        "primitive_counts": {
          "move": 1,
          "grip": 1,
          "hold": 1
        }
      }
    ]
  },
  "fill_pen_holder-s1": {
    "id": "fill_pen_holder-s1",
    "task": "fill_pen_holder",
    "seed": 1,
    "score": 10.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求一手持笔筒、另一手逐支装笔。右手从侧面夹持笔筒外壁，保持上方开口可用，抬起后移到双臂之间。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "右手已从侧面提起笔筒并保持开口。左手抓取第一支紫色粗笔靠近上端处，准备竖直装入。",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "紫色粗笔仍在桌面，略降低夹取点并减小闭合开度后重新抓取。",
        "submitted_actions": 62,
        "primitive_counts": {
          "move": 2,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "远侧竖直抓取未提起紫色笔，改用沿笔轴方向倾斜的夹爪，将腕部留在更近的可达区域。",
        "submitted_actions": 85,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "倾斜抓取已提起紫色笔。按当前夹持姿态将笔轴转为竖直，使笔尖进入开口中央后松爪。",
        "submitted_actions": 102,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "前次笔落在筒口外侧。右爪略收紧以稳定筒体，左爪抓取较近粗笔；竖直移至开口上方后暂停检查，不立即释放。",
        "submitted_actions": 133,
        "primitive_counts": {
          "grip": 2,
          "move": 4
        }
      },
      {
        "request": "0006",
        "reason": "腕部 RGB 确认蓝笔仍被夹住，但笔轴相对竖直有倾斜。按可见倾斜方向小幅校正，并把估计的笔轴中心对准开口后降低释放。",
        "submitted_actions": 89,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0007",
        "reason": "Head RGB shows previously released pens outside the holder. Grasp the remaining black-and-gold pen near its thicker cap, using a visually estimated table plane; verify retention after lifting before insertion.",
        "submitted_actions": 76,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0008",
        "reason": "Both black-and-gold pens remain between the jaws in RGB after lifting. Rotate the grasp so the cap points upward, and position above the visible holder opening; stop for visual alignment before release.",
        "submitted_actions": 56,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0009",
        "reason": "The black pen appears nearly upright above the holder in RGB. Lower the held pen into the opening, release and retreat to inspect whether it stayed inside.",
        "submitted_actions": 64,
        "primitive_counts": {
          "move": 2,
          "grip": 1
        }
      },
      {
        "request": "0010",
        "reason": "Head RGB shows one black-and-gold pen inside the holder. Attempt the remaining black-and-gold pen using the same cap grasp and insertion orientation; other fallen pens remain and full success is not assumed.",
        "submitted_actions": 185,
        "primitive_counts": {
          "move": 7,
          "grip": 3
        }
      },
      {
        "request": "0011",
        "reason": "One black pen is visible inside the returned holder, while the second black pen and both markers are outside. Full completion is not achieved; return toward home for the remaining native budget and retain the native result.",
        "submitted_actions": 65,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "fill_pen_holder-s2": {
    "id": "fill_pen_holder-s2",
    "task": "fill_pen_holder",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "指令要求一手持笔筒、另一手逐支装笔。右手从侧面夹持笔筒外壁，保持上方开口可用，抬起后移到双臂之间。",
        "submitted_actions": 132,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "笔筒已滑落并横放。按当前 RGB 的筒体方向从上方重新夹持，抬起后旋转成直立，再保持开口供左手装笔。",
        "submitted_actions": 126,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "横倒的笔筒未被提起，先按最新筒体位置重新从上方夹持并抬升，暂不旋转以确认抓取。",
        "submitted_actions": 91,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "右手跨越桌面仍未提起横倒笔筒。先撤开右臂，改用更近的左臂夹持筒体；后续由右手装笔。",
        "submitted_actions": 119,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "左手已提起横倒笔筒。按可见筒体轴线旋转，使开口朝上并保持在桌面中央，随后检查方向。",
        "submitted_actions": 52,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0005",
        "reason": "多次恢复后笔筒仍横斜，实际末端姿态未到达扶正目标，无法完成一手持筒另一手装笔的要求。本轮停止操作，归位至原生结束并保留失败。",
        "submitted_actions": 710,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "put_bottles_into_dustbin-s0": {
    "id": "put_bottles_into_dustbin-s0",
    "task": "put_bottles_into_dustbin",
    "seed": 0,
    "score": 10.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Four bottles and an open dustbin on the left are visible. Start with the nearest left-side bottle; estimate its position from RGB and public camera calibration, close around its body, and verify after lifting.",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The upright bottle toppled and the gripper is empty. Regrasp its now horizontal body from RGB, then carry toward the torso and over the visible left dustbin before releasing.",
        "submitted_actions": 154,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The pink bottle remains on the table after the transfer attempt. Regrasp lower around its horizontal body, lift vertically first, and inspect retention.",
        "submitted_actions": 78,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The current bottle is at or between the left jaws after the lift. Transfer it over the dustbin and release. Then grasp a far-right bottle near its visible neck with the right hand, using a visually estimated neck height, and lift for inspection.",
        "submitted_actions": 171,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The pink bottle is visible in the dustbin, while the right-hand white bottle slipped onto the table. Use the remaining budget to pick the nearer yellow bottle and deposit it.",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "Some bottles remain outside the bin and the remaining native steps are insufficient for another full pickup and transfer. Return toward home and preserve the native partial-progress result.",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      },
      {
        "request": "0006",
        "reason": "The native evaluator is still requesting actions, so submitted action totals did not exhaust the actual simulation budget. Continue with an uncompleted bottle; grasp its visible body/neck and bring it to the middle for inspection.",
        "submitted_actions": 116,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      }
    ]
  },
  "put_bottles_into_dustbin-s1": {
    "id": "put_bottles_into_dustbin-s1",
    "task": "put_bottles_into_dustbin",
    "seed": 1,
    "score": 10.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Four bottles and an open dustbin on the left are visible. Start with the nearest left-side bottle; estimate its position from RGB and public camera calibration, close around its body, and verify after lifting.",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The upright bottle toppled and the gripper is empty. Regrasp its now horizontal body from RGB, then carry toward the torso and over the visible left dustbin before releasing.",
        "submitted_actions": 154,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The first bottle is no longer on the table. Grasp the next visible bottle with a vertical approach, then lift before attempting transport.",
        "submitted_actions": 78,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The current bottle is at or between the left jaws after the lift. Transfer it over the dustbin and release. Then grasp a far-right bottle near its visible neck with the right hand, using a visually estimated neck height, and lift for inspection.",
        "submitted_actions": 171,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The blue bottle slipped during transport and remains near the left hand. Regrasp lower around its body, then lift and deposit it within the remaining native steps.",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "Some bottles remain outside the bin and the remaining native steps are insufficient for another full pickup and transfer. Return toward home and preserve the native partial-progress result.",
        "submitted_actions": 70,
        "primitive_counts": {
          "home": 1
        }
      },
      {
        "request": "0006",
        "reason": "The native evaluator is still requesting actions, so submitted action totals did not exhaust the actual simulation budget. Continue with an uncompleted bottle; grasp its visible body/neck and bring it to the middle for inspection.",
        "submitted_actions": 116,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      }
    ]
  },
  "put_bottles_into_dustbin-s2": {
    "id": "put_bottles_into_dustbin-s2",
    "task": "put_bottles_into_dustbin",
    "seed": 2,
    "score": 10.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Four bottles and an open dustbin on the left are visible. Start with the nearest left-side bottle; estimate its position from RGB and public camera calibration, close around its body, and verify after lifting.",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "Wrist RGB shows the green bottle held, but actual wrist height fell short of the requested lift. Move it closer to the torso before carrying it over the visible left dustbin and releasing.",
        "submitted_actions": 101,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The first bottle is no longer on the table. Grasp the next visible bottle with a vertical approach, then lift before attempting transport.",
        "submitted_actions": 78,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The current bottle is at or between the left jaws after the lift. Transfer it over the dustbin and release. Then grasp a far-right bottle near its visible neck with the right hand, using a visually estimated neck height, and lift for inspection.",
        "submitted_actions": 171,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The right hand appears to retain the upright white bottle at its neck. Bring it to the middle, grasp its lower body from the left side, release the right hand, and inspect the handover before moving to the bin.",
        "submitted_actions": 117,
        "primitive_counts": {
          "move": 4,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "The neck-to-body handover dropped the white bottle onto the table. Regrasp its now horizontal body from RGB and use the remaining budget for a direct left-hand deposit.",
        "submitted_actions": 142,
        "primitive_counts": {
          "move": 4,
          "grip": 2,
          "hold": 1
        }
      },
      {
        "request": "0006",
        "reason": "The native evaluator is still requesting actions, so submitted action totals did not exhaust the actual simulation budget. Continue with an uncompleted bottle; grasp its visible body/neck and bring it to the middle for inspection.",
        "submitted_actions": 116,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      }
    ]
  },
  "play_stacking_toy-s0": {
    "id": "play_stacking_toy-s0",
    "task": "play_stacking_toy",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "The task shows several shapes with different hole profiles and four pegs, rather than a single stacking pole. Move the wrist camera above the board to inspect peg cross-sections using RGB before choosing a placement.",
        "submitted_actions": 35,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0001",
        "reason": "Wrist RGB shows round holes and round pegs of decreasing heights. There is one orange disk in each scene; visually infer that its group belongs on the shortest, rightmost peg. Grasp that disk and lift before insertion; this grouping is an inference, not a task answer.",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The orange disk is visibly retained and its hole is above the short peg. Move the inspection arm away, lower the disk slowly onto the peg, release, and retreat to inspect seating.",
        "submitted_actions": 93,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The orange disk rests near the shortest peg, but exact seating remains uncertain in head RGB. Continue with a piece from the inferred two/three-piece group; grasp its center, align its hole over the corresponding middle peg, and release slowly.",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The previous piece landed beside its peg, showing lateral alignment error. Grasp a yellow piece and stop above the inferred matching peg so its visible hole can be compared with the target before lowering.",
        "submitted_actions": 91,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "The held yellow piece is laterally offset from its intended peg. Estimate its hole center from head RGB at the grasped-piece height and compensate that offset before lowering; pause while still grasping to inspect the hole.",
        "submitted_actions": 51,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0006",
        "reason": "The lowered yellow square tilted and the peg is not visible through its hole. Release without claiming insertion; attempt the other yellow square and verify its hole center above the peg.",
        "submitted_actions": 127,
        "primitive_counts": {
          "grip": 2,
          "move": 5
        }
      },
      {
        "request": "0007",
        "reason": "The next piece is retained in RGB. Compensate its estimated hole-center offset before lowering; seed 1 uses a slightly higher release height because one yellow square is already seated. Exact final seating will be checked after release.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0008",
        "reason": "Earlier pieces tilted or fell beside the pegs. Attempt another shape with a slightly higher grasp to reduce table contact; apply the observed lateral offset and retain the native outcome.",
        "submitted_actions": 138,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0009",
        "reason": "The far-left piece was not retained. Its visual surface-height estimate affects lateral projection strongly near the image edge; update that assumed plane to 0.785 m, regrasp at its current RGB center, and attempt placement.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0010",
        "reason": "Several pieces remain unassembled. Continue while the native evaluator requests actions: choose a more central visible piece, grasp and lift it, then attempt its matching peg with the observed offset correction.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0011",
        "reason": "Continue two remaining visible pieces from the same inferred shape group while native steps remain. Use the current RGB positions, keep the hole area clear, and increase placement height for successive layers; final seating and completion remain unconfirmed.",
        "submitted_actions": 282,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "play_stacking_toy-s1": {
    "id": "play_stacking_toy-s1",
    "task": "play_stacking_toy",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "The task shows several shapes with different hole profiles and four pegs, rather than a single stacking pole. Move the wrist camera above the board to inspect peg cross-sections using RGB before choosing a placement.",
        "submitted_actions": 35,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0001",
        "reason": "Wrist RGB shows round holes and round pegs of decreasing heights. There is one orange disk in each scene; visually infer that its group belongs on the shortest, rightmost peg. Grasp that disk and lift before insertion; this grouping is an inference, not a task answer.",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The orange disk is visibly retained and its hole is above the short peg. Move the inspection arm away, lower the disk slowly onto the peg, release, and retreat to inspect seating.",
        "submitted_actions": 93,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The orange disk rests near the shortest peg, but exact seating remains uncertain in head RGB. Continue with a piece from the inferred two/three-piece group; grasp its center, align its hole over the corresponding middle peg, and release slowly.",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The previous piece landed beside its peg, showing lateral alignment error. Grasp a yellow piece and stop above the inferred matching peg so its visible hole can be compared with the target before lowering.",
        "submitted_actions": 91,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "The held yellow piece is laterally offset from its intended peg. Estimate its hole center from head RGB at the grasped-piece height and compensate that offset before lowering; pause while still grasping to inspect the hole.",
        "submitted_actions": 51,
        "primitive_counts": {
          "move": 2
        }
      },
      {
        "request": "0006",
        "reason": "Wrist RGB clearly shows the peg through the yellow square hole. Release this seated piece, then lift the next yellow square above the same peg for a second layer.",
        "submitted_actions": 127,
        "primitive_counts": {
          "grip": 2,
          "move": 5
        }
      },
      {
        "request": "0007",
        "reason": "The next piece is retained in RGB. Compensate its estimated hole-center offset before lowering; seed 1 uses a slightly higher release height because one yellow square is already seated. Exact final seating will be checked after release.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0008",
        "reason": "Two yellow squares appear seated with the peg visible through them. Attempt the third yellow square with a slightly higher grasp to reduce table contact, applying the observed lateral grasp offset and a third-layer placement height.",
        "submitted_actions": 138,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0009",
        "reason": "The far-left piece was not retained. Its visual surface-height estimate affects lateral projection strongly near the image edge; update that assumed plane to 0.785 m, regrasp at its current RGB center, and attempt placement.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0010",
        "reason": "Several pieces remain unassembled. Continue while the native evaluator requests actions: choose a more central visible piece, grasp and lift it, then attempt its matching peg with the observed offset correction.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0011",
        "reason": "Continue two remaining visible pieces from the same inferred shape group while native steps remain. Use the current RGB positions, keep the hole area clear, and increase placement height for successive layers; final seating and completion remain unconfirmed.",
        "submitted_actions": 282,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "play_stacking_toy-s2": {
    "id": "play_stacking_toy-s2",
    "task": "play_stacking_toy",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "The task shows several shapes with different hole profiles and four pegs, rather than a single stacking pole. Move the wrist camera above the board to inspect peg cross-sections using RGB before choosing a placement.",
        "submitted_actions": 35,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0001",
        "reason": "Wrist RGB shows round holes and round pegs of decreasing heights. There is one orange disk in each scene; visually infer that its group belongs on the shortest, rightmost peg. Grasp that disk and lift before insertion; this grouping is an inference, not a task answer.",
        "submitted_actions": 111,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The orange disk is visibly retained and its hole is above the short peg. Move the inspection arm away, lower the disk slowly onto the peg, release, and retreat to inspect seating.",
        "submitted_actions": 93,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The orange disk rests near the shortest peg, but exact seating remains uncertain in head RGB. Continue with a piece from the inferred two/three-piece group; grasp its center, align its hole over the corresponding middle peg, and release slowly.",
        "submitted_actions": 139,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The previous piece landed beside its peg, showing lateral alignment error. Grasp a yellow piece and stop above the inferred matching peg so its visible hole can be compared with the target before lowering.",
        "submitted_actions": 91,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0005",
        "reason": "The yellow square slipped onto the table during lifting. Regrasp at its current RGB center with a deeper vertical grasp and lift slowly before another alignment attempt.",
        "submitted_actions": 106,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0006",
        "reason": "The retried yellow square slipped out of view to the left. Attempt the remaining visible star and inspect its hole above the inferred matching peg.",
        "submitted_actions": 96,
        "primitive_counts": {
          "move": 4,
          "grip": 1
        }
      },
      {
        "request": "0007",
        "reason": "The next piece is retained in RGB. Compensate its estimated hole-center offset before lowering; seed 1 uses a slightly higher release height because one yellow square is already seated. Exact final seating will be checked after release.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0008",
        "reason": "Earlier pieces tilted or fell beside the pegs. Attempt another shape with a slightly higher grasp to reduce table contact; apply the observed lateral offset and retain the native outcome.",
        "submitted_actions": 138,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0009",
        "reason": "The blue piece is seated with the peg visibly through its hole. Attempt the next blue piece as a second layer using the same corrected target.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0010",
        "reason": "Several pieces remain unassembled. Continue while the native evaluator requests actions: choose a more central visible piece, grasp and lift it, then attempt its matching peg with the observed offset correction.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0011",
        "reason": "Continue two remaining visible pieces from the same inferred shape group while native steps remain. Use the current RGB positions, keep the hole area clear, and increase placement height for successive layers; final seating and completion remain unconfirmed.",
        "submitted_actions": 282,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "swap_T-s0": {
    "id": "swap_T-s0",
    "task": "swap_T",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize the initial red and blue T positions and stem directions from RGB. Interpret swapping with correct orientations as exchanging their full visible poses. Grasp each stem with its corresponding hand and lift both before exchanging positions.",
        "submitted_actions": 148,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "Both T blocks remain held in RGB. Move the left-held red block aside, place blue into red's memorized pose, then place red into blue's memorized pose; retain both original stem orientations as targets.",
        "submitted_actions": 183,
        "primitive_counts": {
          "move": 7,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The exchange is incomplete: blocks slipped or remained at their old locations. Attempt to recover the red T from its current RGB pose and place it at the memorized blue pose within the native budget, without resetting or claiming success.",
        "submitted_actions": 124,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "swap_T-s1": {
    "id": "swap_T-s1",
    "task": "swap_T",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize the initial red and blue T positions and stem directions from RGB. Interpret swapping with correct orientations as exchanging their full visible poses. Grasp each stem with its corresponding hand and lift both before exchanging positions.",
        "submitted_actions": 148,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "Both blocks dropped during the closely spaced dual grasp. Clear the left arm, then transfer the blue block alone to the memorized red pose, grasping nearer its crossbar and rotating by the remembered orientation difference.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 7,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The exchange is incomplete: blocks slipped or remained at their old locations. Attempt to recover the red T from its current RGB pose and place it at the memorized blue pose within the native budget, without resetting or claiming success.",
        "submitted_actions": 124,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "swap_T-s2": {
    "id": "swap_T-s2",
    "task": "swap_T",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize the initial red and blue T positions and stem directions from RGB. Interpret swapping with correct orientations as exchanging their full visible poses. Grasp each stem with its corresponding hand and lift both before exchanging positions.",
        "submitted_actions": 148,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "Both blocks dropped during the closely spaced dual grasp. Clear the left arm, then transfer the blue block alone to the memorized red pose, grasping nearer its crossbar and rotating by the remembered orientation difference.",
        "submitted_actions": 151,
        "primitive_counts": {
          "move": 7,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The exchange is incomplete: blocks slipped or remained at their old locations. Attempt to recover the red T from its current RGB pose and place it at the memorized blue pose within the native budget, without resetting or claiming success.",
        "submitted_actions": 124,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "swap_blocks-s0": {
    "id": "swap_blocks-s0",
    "task": "swap_blocks",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize that the left and right mats are occupied and the middle mat is empty. Begin the three-move swap by moving the left block to the middle mat; inspect placement before pressing the confirmation button.",
        "submitted_actions": 156,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "RGB confirms the first block occupies the originally empty mat. Press and release the button once to confirm that move, then transfer the right block to the newly empty mat; inspect before the next confirmation.",
        "submitted_actions": 222,
        "primitive_counts": {
          "move": 10,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The right block remains on its original mat, so the second move did not succeed and must not be confirmed. Re-estimate its current top center from RGB, grasp slightly lower, and pause after lifting to verify retention.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The right block is still on the mat. Center the grasp on the current visible top face and rotate the jaw direction by 90 degrees, then lift and transfer to the empty mat; no confirmation press is sent before placement verification.",
        "submitted_actions": 131,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The block fell outside the intended empty mat. Recover it from its current RGB position and place it onto that mat; keep the move unconfirmed until placement is visible.",
        "submitted_actions": 129,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "swap_blocks-s1": {
    "id": "swap_blocks-s1",
    "task": "swap_blocks",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize that the left and right mats are occupied and the middle mat is empty. Begin the three-move swap by moving the left block to the middle mat; inspect placement before pressing the confirmation button.",
        "submitted_actions": 156,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "RGB confirms the first block occupies the originally empty mat. Press and release the button once to confirm that move, then transfer the right block to the newly empty mat; inspect before the next confirmation.",
        "submitted_actions": 222,
        "primitive_counts": {
          "move": 10,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The right block remains on its original mat, so the second move did not succeed and must not be confirmed. Re-estimate its current top center from RGB, grasp slightly lower, and pause after lifting to verify retention.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The right block is visibly held clear of its mat. Carry it to the empty left mat, lower and release, then retreat to verify the second move.",
        "submitted_actions": 87,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0004",
        "reason": "The right-held block did not reach the far-left mat and fell back near its start. Regrasp and tilt the fingers left so the wrist can stay nearer the robot while the block reaches the target. Do not confirm until the mat is occupied.",
        "submitted_actions": 129,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "The tilted transfer moved the block near the left mat, but its center is outside the mat. Regrasp locally with the left hand and place it onto the mat before any further confirmation; native budget may end during this recovery.",
        "submitted_actions": 112,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "swap_blocks-s2": {
    "id": "swap_blocks-s2",
    "task": "swap_blocks",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize that the middle and right mats are occupied and the left mat is empty. Begin the three-move swap by moving the middle block to the left mat; inspect placement before pressing the confirmation button.",
        "submitted_actions": 156,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "RGB confirms the first block occupies the originally empty mat. Press and release the button once to confirm that move, then transfer the right block to the newly empty mat; inspect before the next confirmation.",
        "submitted_actions": 222,
        "primitive_counts": {
          "move": 10,
          "grip": 2
        }
      },
      {
        "request": "0002",
        "reason": "The right block remains on its original mat, so the second move did not succeed and must not be confirmed. Re-estimate its current top center from RGB, grasp slightly lower, and pause after lifting to verify retention.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0003",
        "reason": "The right block is still on the mat. Center the grasp on the current visible top face and rotate the jaw direction by 90 degrees, then lift and transfer to the empty mat; no confirmation press is sent before placement verification.",
        "submitted_actions": 131,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "The block fell outside the intended empty mat. Recover it from its current RGB position and place it onto that mat; keep the move unconfirmed until placement is visible.",
        "submitted_actions": 129,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      }
    ]
  },
  "cover_blocks-s0": {
    "id": "cover_blocks-s0",
    "task": "cover_blocks",
    "seed": 0,
    "score": 30.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize left-to-right colors red, blue, green. Cover from left to right, then uncover left, right, middle to satisfy red-green-blue. Begin with the left cup over the red block.",
        "submitted_actions": 150,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The left block is now occluded by its cup in RGB. Continue the required left-to-right covering order: cover the middle block, then the right block, keeping the initial color-location memory unchanged.",
        "submitted_actions": 270,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      },
      {
        "request": "0002",
        "reason": "All three blocks are now occluded by their cups in RGB. Reveal red first using the memorized initial color positions: left cup for seeds 0/1, middle cup for seed 2. Lift clear before returning the cup to the front.",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "The first revealed block is red in RGB, matching the memorized location. Continue revealing green and then blue in that order, lifting each cup clear before returning it toward the front; do not change the initial color memory.",
        "submitted_actions": 252,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "cover_blocks-s1": {
    "id": "cover_blocks-s1",
    "task": "cover_blocks",
    "seed": 1,
    "score": 30.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize left-to-right colors red, blue, green. Cover from left to right, then uncover left, right, middle to satisfy red-green-blue. Begin with the left cup over the red block.",
        "submitted_actions": 150,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The left block is now occluded by its cup in RGB. Continue the required left-to-right covering order: cover the middle block, then the right block, keeping the initial color-location memory unchanged.",
        "submitted_actions": 270,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      },
      {
        "request": "0002",
        "reason": "All three blocks are now occluded by their cups in RGB. Reveal red first using the memorized initial color positions: left cup for seeds 0/1, middle cup for seed 2. Lift clear before returning the cup to the front.",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "The first revealed block is red in RGB, matching the memorized location. Continue revealing green and then blue in that order, lifting each cup clear before returning it toward the front; do not change the initial color memory.",
        "submitted_actions": 252,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "cover_blocks-s2": {
    "id": "cover_blocks-s2",
    "task": "cover_blocks",
    "seed": 2,
    "score": 15.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Memorize left-to-right colors green, red, blue. Cover from left to right, then uncover middle, left, right to satisfy red-green-blue. Begin with the left cup over the green block.",
        "submitted_actions": 150,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The left block is now occluded by its cup in RGB. Continue the required left-to-right covering order: cover the middle block, then the right block, keeping the initial color-location memory unchanged.",
        "submitted_actions": 270,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      },
      {
        "request": "0002",
        "reason": "All three blocks are now occluded by their cups in RGB. Reveal red first using the memorized initial color positions: left cup for seeds 0/1, middle cup for seed 2. Lift clear before returning the cup to the front.",
        "submitted_actions": 130,
        "primitive_counts": {
          "move": 6,
          "grip": 2
        }
      },
      {
        "request": "0003",
        "reason": "The first revealed block is red in RGB, matching the memorized location. Continue revealing green and then blue in that order, lifting each cup clear before returning it toward the front; do not change the initial color memory.",
        "submitted_actions": 252,
        "primitive_counts": {
          "move": 12,
          "grip": 4
        }
      }
    ]
  },
  "align_blocks-s0": {
    "id": "align_blocks-s0",
    "task": "align_blocks",
    "seed": 0,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Use the visible long set square as a straight pushing edge. Estimate its axis and the three block centers from RGB, grasp the ruler near its middle, and lift slightly before rotating it parallel to the desired row.",
        "submitted_actions": 65,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The ruler did not lift and remains flat on the table. Use it as the pushing tool by contacting its back edge with the closed gripper and translating it perpendicular to its visible straight edge toward all three blocks. Reserve the remaining steps for the explicitly requested arm reset.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "RGB shows the ruler has pushed the three blocks toward a common straight edge. Execute the explicitly requested robot reset now, using the initial public joint state, and let the native evaluator decide alignment success.",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "align_blocks-s1": {
    "id": "align_blocks-s1",
    "task": "align_blocks",
    "seed": 1,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Use the visible long set square as a straight pushing edge. Estimate its axis and the three block centers from RGB, grasp the ruler near its middle, and lift slightly before rotating it parallel to the desired row.",
        "submitted_actions": 65,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The ruler did not lift and remains flat on the table. Use it as the pushing tool by contacting its back edge with the closed gripper and translating it perpendicular to its visible straight edge toward all three blocks. Reserve the remaining steps for the explicitly requested arm reset.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "RGB shows the ruler has pushed the three blocks toward a common straight edge. Execute the explicitly requested robot reset now, using the initial public joint state, and let the native evaluator decide alignment success.",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "align_blocks-s2": {
    "id": "align_blocks-s2",
    "task": "align_blocks",
    "seed": 2,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "Use the visible long set square as a straight pushing edge. Estimate its axis and the three block centers from RGB, grasp the ruler near its middle, and lift slightly before rotating it parallel to the desired row.",
        "submitted_actions": 65,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The ruler did not lift and remains flat on the table. Use it as the pushing tool by contacting its back edge with the closed gripper and translating it perpendicular to its visible straight edge toward all three blocks. Reserve the remaining steps for the explicitly requested arm reset.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0002",
        "reason": "RGB shows the ruler has pushed the three blocks toward a common straight edge. Execute the explicitly requested robot reset now, using the initial public joint state, and let the native evaluator decide alignment success.",
        "submitted_actions": 50,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "solve_equation-s0": {
    "id": "solve_equation-s0",
    "task": "solve_equation",
    "seed": 0,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Read the equation and candidate symbols from RGB. 8 ? 2 = 4 requires division; select the division token. Grasp only the chosen token and inspect after lifting; preserve enough native steps to reset the arm.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The selected token remains on the table and the gripper is empty. Adjust the jaw direction and grasp slightly higher with a partial closure, using its current RGB center; inspect retention before transporting to the answer pad.",
        "submitted_actions": 68,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The operator candidates look like flat labeled controls and did not move in either grasp attempt. Test selecting division by a press-and-release at the visible division control, then inspect whether the equation changes; this is an interface hypothesis.",
        "submitted_actions": 56,
        "primitive_counts": {
          "move": 3
        }
      },
      {
        "request": "0003",
        "reason": "The answer pad is still not correctly filled in RGB. Execute the required joint-space reset and retain the native failure/partial score; do not substitute mathematical correctness for physical task success.",
        "submitted_actions": 140,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "solve_equation-s1": {
    "id": "solve_equation-s1",
    "task": "solve_equation",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Read the equation and candidate symbols from RGB. ? / 5 = 0 requires zero; select the orange zero. Grasp only the chosen token and inspect after lifting; preserve enough native steps to reset the arm.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The selected token remains on the table and the gripper is empty. Adjust the jaw direction and grasp slightly higher with a partial closure, using its current RGB center; inspect retention before transporting to the answer pad.",
        "submitted_actions": 68,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The correct numeral remains on the table after two grasp attempts. Move it toward the answer pad by a controlled tabletop push, using a forward-tilted fingertip to keep the wrist reachable; reserve time for the required reset.",
        "submitted_actions": 86,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0003",
        "reason": "The answer pad is still not correctly filled in RGB. Execute the required joint-space reset and retain the native failure/partial score; do not substitute mathematical correctness for physical task success.",
        "submitted_actions": 140,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "solve_equation-s2": {
    "id": "solve_equation-s2",
    "task": "solve_equation",
    "seed": 2,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "Read the equation and candidate symbols from RGB. 1 + ? = 6 requires five; select the blue five. Grasp only the chosen token and inspect after lifting; preserve enough native steps to reset the arm.",
        "submitted_actions": 75,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0001",
        "reason": "The selected token remains on the table and the gripper is empty. Adjust the jaw direction and grasp slightly higher with a partial closure, using its current RGB center; inspect retention before transporting to the answer pad.",
        "submitted_actions": 68,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The correct numeral remains on the table after two grasp attempts. Move it toward the answer pad by a controlled tabletop push, using a forward-tilted fingertip to keep the wrist reachable; reserve time for the required reset.",
        "submitted_actions": 86,
        "primitive_counts": {
          "move": 4
        }
      },
      {
        "request": "0003",
        "reason": "The answer pad is still not correctly filled in RGB. Execute the required joint-space reset and retain the native failure/partial score; do not substitute mathematical correctness for physical task success.",
        "submitted_actions": 140,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "stack_blocks_by_language-s0": {
    "id": "stack_blocks_by_language-s0",
    "task": "stack_blocks_by_language",
    "seed": 0,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "The requested bottom-to-top order is blue, yellow, orange. Move the bottom block to a common reachable stacking location in front of the robot, then place the other two on it; the instruction does not specify a fixed tower location.",
        "submitted_actions": 117,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The correct bottom block is now at the front stacking location in RGB. Grasp the requested middle-color block and stop above the base so lateral alignment can be checked before release.",
        "submitted_actions": 70,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "Wrist RGB confirms the middle-color block is retained above the correct base. Lower it at the common stacking center to the second-layer height, and pause before release to inspect contact.",
        "submitted_actions": 25,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0003",
        "reason": "The middle block has been lowered onto the base region. Release and retreat to verify whether a stable two-block stack remains before handling the top block.",
        "submitted_actions": 27,
        "primitive_counts": {
          "grip": 1,
          "move": 1
        }
      },
      {
        "request": "0004",
        "reason": "Yellow landed beside the blue base. Recover yellow with the right hand and place it at the common base center before attempting orange; use a shorter motion segment to preserve reset time.",
        "submitted_actions": 72,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "The recovered yellow-over-blue stack is now visible. Make the final orange placement at the top-layer height, using a short motion sequence so the arm can still be reset within the native budget.",
        "submitted_actions": 59,
        "primitive_counts": {
          "move": 4,
          "grip": 2
        }
      },
      {
        "request": "0006",
        "reason": "The final orange placement has been released. Reset from the current public joint state immediately and let the native evaluator determine tower order and stability.",
        "submitted_actions": 40,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "stack_blocks_by_language-s1": {
    "id": "stack_blocks_by_language-s1",
    "task": "stack_blocks_by_language",
    "seed": 1,
    "score": 0.0,
    "success": false,
    "decisions": [
      {
        "request": "0000",
        "reason": "The requested bottom-to-top order is red, orange, green. Move the bottom block to a common reachable stacking location in front of the robot, then place the other two on it; the instruction does not specify a fixed tower location.",
        "submitted_actions": 117,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The correct bottom block is now at the front stacking location in RGB. Grasp the requested middle-color block and stop above the base so lateral alignment can be checked before release.",
        "submitted_actions": 70,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "The wrist image shows an empty gripper; the orange block was not retained. Clear the arm to reveal where it fell before attempting any further stack placement.",
        "submitted_actions": 21,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0003",
        "reason": "The orange middle block is still at its original far position. Use a forward-tilted grasp so the wrist stays closer to the robot, then keep that orientation during transport and place orange on the red base; leave steps for the top block and reset.",
        "submitted_actions": 86,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0004",
        "reason": "Orange remains at its original far location. Try a shallower side grasp that keeps the wrist behind the block, then transport it over the red base without changing that grasp orientation; reserve the last steps for reset.",
        "submitted_actions": 84,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "Orange was not retained and the required three-block tower is incomplete. Execute the requested robot reset and preserve the native result without rerunning this seed.",
        "submitted_actions": 95,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  },
  "stack_blocks_by_language-s2": {
    "id": "stack_blocks_by_language-s2",
    "task": "stack_blocks_by_language",
    "seed": 2,
    "score": 100.0,
    "success": true,
    "decisions": [
      {
        "request": "0000",
        "reason": "The requested bottom-to-top order is yellow, green, red. Move the bottom block to a common reachable stacking location in front of the robot, then place the other two on it; the instruction does not specify a fixed tower location.",
        "submitted_actions": 117,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0001",
        "reason": "The correct bottom block is now at the front stacking location in RGB. Grasp the requested middle-color block and stop above the base so lateral alignment can be checked before release.",
        "submitted_actions": 70,
        "primitive_counts": {
          "move": 3,
          "grip": 1
        }
      },
      {
        "request": "0002",
        "reason": "Wrist RGB confirms the middle-color block is retained above the correct base. Lower it at the common stacking center to the second-layer height, and pause before release to inspect contact.",
        "submitted_actions": 25,
        "primitive_counts": {
          "move": 1
        }
      },
      {
        "request": "0003",
        "reason": "The middle block has been lowered onto the base region. Release and retreat to verify whether a stable two-block stack remains before handling the top block.",
        "submitted_actions": 27,
        "primitive_counts": {
          "grip": 1,
          "move": 1
        }
      },
      {
        "request": "0004",
        "reason": "A green-over-yellow two-block stack remains visible. Grasp the red top block, lift clear of the stack, place it at the third-layer height and release; retain time for the required robot reset.",
        "submitted_actions": 110,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0005",
        "reason": "Red fell beside the two-block stack. Attempt one short local recovery from its current RGB center, lift clear, and place it on green; the remaining native budget is very small and reset follows immediately.",
        "submitted_actions": 32,
        "primitive_counts": {
          "move": 5,
          "grip": 2
        }
      },
      {
        "request": "0006",
        "reason": "The local red recovery has been released. Use the remaining native steps for the required robot reset; tower stability and completion are judged only by the evaluator.",
        "submitted_actions": 37,
        "primitive_counts": {
          "home": 1
        }
      }
    ]
  }
}
