// assets/js/failures.js window.FAILURES = [ // Added so your playback rules work when browsing these labels { name: "Time", family: "Meta", definition: "Timing annotation; clip plays from the beginning of the video until the end frame.", onset: "Video start", offset: "Annotated end frame" }, { name: "Success", family: "Meta", definition: "Successful trial.", onset: "Video start", offset: "Video end" }, { name: "Failure", family: "Meta", definition: "Failed trial.", onset: "Video start", offset: "Video end" }, // Existing failures { name: "Safety Conflict", family: "Safety", definition: "Physical contact between participant and robot.", onset: "Start of contact.", offset: "End of contact." }, { name: "Safety Avoidance", family: "Safety", definition: "Participant avoids physical contact with robot.", onset: "First frame when human backs their hand when robot is near.", offset: "End of video (per playback rule)." }, { name: "Passive Wait", family: "Efficiency", definition: "Task deviates from optimal performance OR the human waits until the robot is finished with its task before starting their task.", onset: "Start frame of waiting/sub-optimal performance.", offset: "End frame when the human proceeds." }, { name: "Redundant Retrieval", family: "Safety/Efficiency", definition: "Duplicate action by both agents for the same item.", onset: "Second agent initiates duplicate action.", offset: "End of video (per playback rule)." }, { name: "Task Model Uncertainty", family: "Cognition", definition: "Human does not know or forget what to do next due to less task knowledge (exclude deferring because they expect the robot to do it).", onset: "First uncertainty cue.", offset: "End of video (per playback rule)." }, { name: "Capability Miscalibration", family: "Cognition", definition: "Human waited because they expected the robot to do it (not because they were unsure what to do).", onset: "Start frame of waiting due to expectation.", offset: "End frame when the human proceeds." }, { name: "Missed Grab", family: "Manipulation", definition: "Robot or human missed the bottle and has to go back and retrieve it.", onset: "10 frames before annotated start (per playback rule).", offset: "50 frames after annotated end (clamped to end of video)." }, { name: "Slippage", family: "Manipulation", definition: "Bottle slips from grasp when moving.", onset: "10 frames before annotated start (per playback rule).", offset: "50 frames after annotated end (clamped to end of video)." } ]; window.FAILURE_MAP = Object.fromEntries(window.FAILURES.map(f => [f.name, f]));