Instruction: stack the green block on the yellow block

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 3

transport_request(t) := proposed_open(t) OR true

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.025

servo_xy(t) := clip_norm(-0.8 * target_vector_xy(t), 0.018)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 4 OR source_lift >= 0.03

servo -> descend after age >= 9 OR d_xy <= 0.008

descend -> release after age >= 4; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

a_exec(t) := exact runtime branch mode_transport_servo(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

mode=transport_servo; a_exec(t)=runtime_mode(a_policy(t), oracle(t), phase(t))

window: 8 <= t < 42; budget: N_edit < 24

trigger=[open OR true] & grasp[3] & d_xy>=0.025

phases: lift(4) -> servo(9) -> descend(4) -> release(2)

current_runtime_reconstruction; sealed executed actions are authoritative

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

frame t is the state before action t; final frame is T

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend descend descend release release done done done done done done done done done done done done done done done done done done done done done done done


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend descend descend release release done done done done


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo descend descend success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend descend descend release release done done done done done done done done done done done done done done done done done done done done done


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend descend descend release release done done done done done done


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift lift servo servo servo servo servo servo servo servo servo descend descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

Autonomously synthesized bounded correction from declared online oracle signals and controllability relations.

current_compiler_reconstruction; canonical program SHA is authoritative

phase watch -> repair if latch(oracle.source_grasped)

phase repair: a_exec[0, 1] += clip_norm(scale(linear(matrix=[[1.0,0.0],[0.0,1.0]], value=oracle.held_source_planar_error_xy),0.5),0.02)

phase repair: a_exec[2] += clip_norm(scale(linear(matrix=[[-1.0]], value=oracle.held_source_vertical_error),0.25),0.01)

Bridge object reset remained physically invalid after 3 attempts: [{'env_index': 5, 'object': 'baked_yellow_cube_3cm', 'position_error': 0.006091800518333912, 'linear_speed': 0.05686085671186447, 'angular_speed': 4.588077068328857}]

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: stack the green block on the yellow block

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch watch repair repair repair repair repair repair repair repair repair repair repair repair repair repair


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

a_exec(t) := exact runtime branch mode_transport_servo(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

window: 12 <= t < 56; budget: N_edit < 18

trigger=[open OR false] & grasp[2] & d_xy>=0.07

phases: lift(3) -> servo(7) -> descend(3) -> release(2)

Bridge object reset remained physically invalid after 3 attempts: [{'env_index': 3, 'object': 'bridge_spoon_generated_modified', 'position_error': 0.040139004588127136, 'linear_speed': 0.00042467060848139226, 'angular_speed': 0.06197128817439079}]

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift servo servo servo servo servo servo descend success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift done done done done done done done success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift servo servo servo servo servo servo descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo descend descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo descend descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

mode=hybrid; a_exec(t)=runtime_mode(a_policy(t), oracle(t), phase(t))

unilateral[4] & !grasped -> open(1) -> close(1)

Bridge object reset remained physically invalid after 3 attempts: [{'env_index': 1, 'object': 'bridge_spoon_generated_modified', 'position_error': 0.014921706169843674, 'linear_speed': 0.0006703235558234155, 'angular_speed': 0.05733692646026611}]

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo descend descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo servo servo descend descend descend release success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift servo servo servo servo descend descend success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift servo servo servo servo servo servo descend descend success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch success_latch


Instruction: put the spoon on the towel

proposed_open(t) := a_policy[6](t) > 0.0

target_vector_xy(t) := target_xy(t) - source_xy(t)

a_exec(t) := a_policy(t), then apply the active mode branch below

stable_grasp(t) := consecutive(grasped(t)) >= 2

transport_request(t) := proposed_open(t) OR false

transport_trigger(t) := phase=idle AND not transport_done AND window(t) AND budget(t) AND transport_request(t) AND stable_grasp(t) AND d_xy(t) >= 0.07

servo_xy(t) := clip_norm(-1.0 * target_vector_xy(t), 0.03)

servo: a_exec[:6]=0; a_exec[:2]=servo_xy(t); a_exec[6]=-1.0

lift -> servo after age >= 3 OR source_lift >= 0.02

servo -> descend after age >= 7 OR d_xy <= 0.022

descend -> release after age >= 3; release -> done after age >= 2

lost := active transport AND not grasped AND phase_age > 0; lost -> done

unilateral(t) := (F_left >= 0.5 AND F_right <= 0.02) OR (F_right >= 0.5 AND F_left <= 0.02)

regrasp_trigger(t) := phase=idle AND not regrasp_done AND window(t) AND budget(t) AND not grasped(t) AND consecutive(unilateral AND not grasped) >= 4 AND not proposed_open(t) AND all(q_finger <= 0.025)

regrasp_open: a_exec[:6]=0; a_exec[6]=1.0 for 1 steps

regrasp_close: a_exec[:6]=0; a_exec[6]=-1.0 for 1 steps; then idle

a_exec(t) := exact runtime branch mode_hybrid(a_policy(t), oracle_metrics(t), phase(t))

interventions(t+1) := interventions(t) + [a_exec(t) != a_policy(t)]

success_latch(t) := OR_{k<=t} physical_success(k)

if success_latch(t): a_exec[:6]=0; a_exec[6]=1.0 (budget-exempt terminal stabilization)

all exposed episodes from four accepted final validation runs; tuning, rejected, and unexposed episodes excluded

idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle idle lift lift lift servo servo servo servo servo servo servo descend descend