{
  "export_format": "kindly-labeling-export/1.0",
  "schema_version": "0.1.0",
  "vocab_ref": "vocab/SPD.tray_assembly@0.1.json",
  "synthetic": true,
  "_readme": {
    "what_this_is": "A single fully-worked SYNTHETIC sample episode conforming to the Kindly Robotics clinical-workflow annotation schema v0.1. It exists so a foundation-model lab or surgical-robot OEM engineer can load, inspect, and validate the schema without any data-sharing agreement.",
    "guardrails": "Every value in this file is synthetic. No clinical capture has occurred. There is NO real PHI, no patient data, no patient in frame, no real site, no real staff, no real consent or DPA. Identifiers prefixed SYNTH/synth/op-synth/ann-synth are placeholders.",
    "status": "v0.1 / in development / pre-capture. The schema is what first-cohort design partners shape; this is a paper example used to surface gaps before real footage exists.",
    "structure": "episode_envelope -> labels.L1 (phase/step segments) -> labels.L2 (action triplets) -> labels.L3 (instrument-state tracks) -> labels.L4 (workflow-context events) -> rlds_excerpt (a 2-second derived RLDS slice). The sidecar (L1-L4) is the source of truth; the RLDS view is a regenerable flattening.",
    "scenario": "~6-minute SPD (sterile processing) general-minor instrument tray reassembly with one protocol-correct missing-instrument exception resolved via an approved substitution."
  },
  "episode_envelope": {
    "episode_id": "kr-spd-synthetic-0001",
    "schema_version": "0.1.0",
    "synthetic": true,
    "data_provenance": "synthetic_paper_example_no_capture",
    "site_pseudonym": "SITE_SYNTH",
    "workflow_family": "SPD.tray_assembly",
    "boundary_def": "SPD.tray_assembly@0.1",
    "vocab_ref": "vocab/SPD.tray_assembly@0.1.json",
    "tray_map_ref": "traymap/GEN-MIN-REV-B@1",
    "program_phase": "pilot",
    "capture_rig_id": "RIG_SYNTH_01",
    "operator_pseudonyms": ["op-synth-01", "op-synth-02"],
    "session_log": {
      "task_type": "tray_assembly",
      "tray_set_type": "general_minor_generic",
      "anomaly_flag": true,
      "note": "SYNTHETIC: one missing instrument resolved via approved substitution"
    },
    "expected_contents": {
      "count_sheet_ref": "GEN-MIN-REV-B",
      "items": [
        { "object_class": "ring_forceps", "qty": 6 },
        { "object_class": "towel_clamp", "qty": 6 },
        { "object_class": "debakey_forceps", "qty": 1 },
        { "object_class": "needle_driver", "qty": 1 },
        { "object_class": "mayo_scissors_curved", "qty": 1 },
        { "object_class": "mayo_scissors_straight", "qty": 1 },
        { "object_class": "metzenbaum_scissors", "qty": 1 }
      ]
    },
    "capture": {
      "fps": 30,
      "duration_s": 360.0,
      "modalities": ["rgb_egocentric", "rgb_overhead"],
      "frame_count": 10800
    },
    "deid": {
      "status": "verified",
      "method": "face_blur+badge_blur+ocr_text_review+screen_hard_mask",
      "reviewed_by": "deid-reviewer-synthetic",
      "reviewed_at": "2026-06-12T00:00:00Z",
      "phi_residual_risk": "low"
    },
    "consent": {
      "staff_consent_ref": "SYNTHETIC-NO-CONSENT-EXISTS",
      "facility_dpa_ref": "SYNTHETIC-NO-DPA-EXISTS",
      "patient_in_frame": false
    },
    "task_summary": "SYNTHETIC: Reassemble general minor instrument tray to count sheet GEN-MIN-REV-B; one missing instrument (Metzenbaum scissors) resolved via protocol-approved substitution; tray wrapped, labeled, staged for sterilization.",
    "annotation_provenance": {
      "annotators": ["ann-synth-01", "ann-synth-02"],
      "clinical_reviewer": "rev-clin-synth",
      "consensus_method": "double+adjudication"
    }
  },
  "labels": {
    "L1": [
      { "layer": "L1", "t_start_s": 0.0, "t_end_s": 12.0, "phase": "assemble", "step": "retrieve_count_sheet", "confidence": "high", "note": "t=0 = empty tray base on surface (capture-protocol boundary)" },
      { "layer": "L1", "t_start_s": 12.0, "t_end_s": 58.0, "phase": "assemble", "step": "stage_instruments", "confidence": "high", "note": "receive from inspection pass-through" },
      { "layer": "L1", "t_start_s": 58.0, "t_end_s": 96.0, "phase": "assemble", "step": "verify_count", "confidence": "high", "note": "discrepancy found ~t=88" },
      { "layer": "L1", "t_start_s": 96.0, "t_end_s": 152.0, "phase": "assemble", "step": "exception_handling", "confidence": "low", "note": "covers the lookup/wait span" },
      { "layer": "L1", "t_start_s": 152.0, "t_end_s": 164.0, "phase": "assemble", "step": "stage_instruments", "confidence": "high", "note": "re-entry of an earlier step — legal per v0.1 tiling/re-entry rules" },
      { "layer": "L1", "t_start_s": 164.0, "t_end_s": 268.0, "phase": "assemble", "step": "place_in_tray", "confidence": "high", "note": "includes the rework at 228-238" },
      { "layer": "L1", "t_start_s": 268.0, "t_end_s": 290.0, "phase": "assemble", "step": "final_count", "confidence": "high" },
      { "layer": "L1", "t_start_s": 290.0, "t_end_s": 318.0, "phase": "wrap", "step": "apply_wrap", "confidence": "medium" },
      { "layer": "L1", "t_start_s": 318.0, "t_end_s": 332.0, "phase": "wrap", "step": "seal_indicator_tape", "confidence": "medium" },
      { "layer": "L1", "t_start_s": 332.0, "t_end_s": 348.0, "phase": "wrap", "step": "label_tray", "confidence": "medium" },
      { "layer": "L1", "t_start_s": 348.0, "t_end_s": 360.0, "phase": "sterilize", "step": "stage_for_sterilizer", "confidence": "low", "out_of_episode": true, "note": "past boundary_def end (sealed/labeled); follow-on SPD.sterilization_staging footage, flagged" }
    ],
    "L2": [
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "tray_base", "t_start_s": 0.0, "t_end_s": 2.2, "target_zone": "work_surface", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "grasp", "object": "count_sheet", "t_start_s": 2.2, "t_end_s": 6.8, "target_zone": "sheet_rack", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "read", "object": "count_sheet", "t_start_s": 6.8, "t_end_s": 12.0, "target_zone": "work_surface", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "transfer", "object": "instrument_basket", "t_start_s": 12.0, "t_end_s": 18.5, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "ring_forceps", "count": 6, "t_start_s": 18.5, "t_end_s": 27.0, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "towel_clamp", "count": 6, "t_start_s": 27.0, "t_end_s": 34.5, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "debakey_forceps", "t_start_s": 34.5, "t_end_s": 39.5, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "needle_driver", "t_start_s": 39.5, "t_end_s": 45.0, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "scissors_group", "t_start_s": 45.0, "t_end_s": 52.0, "target_zone": "staging_mat", "confidence": "high", "note": "collective object class; Metzenbaum expected in group but absent — not yet known" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "staging_mat", "t_start_s": 52.0, "t_end_s": 58.0, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "count", "object": "staging_contents", "t_start_s": 58.0, "t_end_s": 88.0, "target_zone": "staging_mat", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "count_sheet", "t_start_s": 88.0, "t_end_s": 104.0, "target_zone": "work_surface", "confidence": "high", "note": "recheck of missing line item" },
      { "layer": "L2", "actor_role": "tech", "verb": "lookup", "object": "tracking_terminal", "evidence": "masked", "t_start_s": 112.0, "t_end_s": 138.0, "target_zone": "terminal_station", "confidence": "low", "note": "screen HARD-MASKED in shipped video — flagged via evidence field. Gap 104-112 is locomotion (un-tripleted gaps legal)" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "substitution_chart", "t_start_s": 138.0, "t_end_s": 148.0, "target_zone": "terminal_station", "confidence": "medium" },
      { "layer": "L2", "actor_role": "tech2", "verb": "hand_off", "object": "metz_scissors_sub", "counterparty_role": "tech", "t_start_s": 152.0, "t_end_s": 158.0, "target_zone": "staging_mat", "confidence": "high", "note": "giver = actor_role, receiver = counterparty_role" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "metz_scissors_sub", "t_start_s": 158.0, "t_end_s": 164.0, "target_zone": "staging_mat", "confidence": "high", "note": "function/tip check of substitute" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "instrument_stringer", "t_start_s": 164.0, "t_end_s": 170.0, "target_zone": "tray_base", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "ring_forceps", "count": 6, "t_start_s": 170.0, "t_end_s": 184.0, "target_zone": "stringer", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "towel_clamp", "count": 6, "t_start_s": 184.0, "t_end_s": 196.0, "target_zone": "stringer", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "debakey_forceps", "t_start_s": 196.0, "t_end_s": 203.0, "target_zone": "tray_well_2", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "needle_driver", "t_start_s": 203.0, "t_end_s": 209.0, "target_zone": "tray_well_3", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "mayo_scissors_curved", "t_start_s": 209.0, "t_end_s": 216.0, "target_zone": "tray_well_4", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "mayo_scissors_straight", "t_start_s": 216.0, "t_end_s": 222.0, "target_zone": "tray_well_4", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "metz_scissors_sub", "t_start_s": 222.0, "t_end_s": 228.0, "target_zone": "tray_well_4", "confidence": "high", "note": "WRONG well per tray map" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "tray_map", "t_start_s": 228.0, "t_end_s": 231.0, "target_zone": "work_surface", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "grasp", "object": "metz_scissors_sub", "t_start_s": 231.0, "t_end_s": 234.0, "target_zone": "tray_well_4", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "metz_scissors_sub", "t_start_s": 234.0, "t_end_s": 238.0, "target_zone": "tray_well_5", "confidence": "high", "note": "rework — correct well" },
      { "layer": "L2", "actor_role": "tech", "verb": "grasp", "object": "chemical_indicator", "t_start_s": 238.0, "t_end_s": 244.0, "target_zone": "supply_drawer", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "chemical_indicator", "t_start_s": 244.0, "t_end_s": 250.0, "target_zone": "tray_center", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "tip_protector", "count": 4, "t_start_s": 250.0, "t_end_s": 260.0, "target_zone": "tray_full", "confidence": "medium" },
      { "layer": "L2", "actor_role": "tech", "verb": "inspect", "object": "tray_full", "t_start_s": 260.0, "t_end_s": 268.0, "target_zone": "tray_full", "confidence": "high", "note": "tray-map conformance check" },
      { "layer": "L2", "actor_role": "tech", "verb": "count", "object": "tray_contents", "t_start_s": 268.0, "t_end_s": 286.0, "target_zone": "tray_full", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "scan", "object": "count_sheet", "t_start_s": 286.0, "t_end_s": 290.0, "target_zone": "work_surface", "confidence": "medium" },
      { "layer": "L2", "actor_role": "tech", "verb": "grasp", "object": "wrap_sheets", "t_start_s": 290.0, "t_end_s": 296.0, "target_zone": "supply_shelf", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "wrap", "object": "tray", "t_start_s": 296.0, "t_end_s": 318.0, "target_zone": "work_surface", "confidence": "high", "note": "double-wrap, sequential envelope folds" },
      { "layer": "L2", "actor_role": "tech", "verb": "seal", "object": "indicator_tape", "t_start_s": 318.0, "t_end_s": 326.0, "target_zone": "wrap_exterior", "confidence": "medium" },
      { "layer": "L2", "actor_role": "tech", "verb": "affix_label", "object": "load_label", "t_start_s": 332.0, "t_end_s": 340.0, "target_zone": "wrap_exterior", "confidence": "medium" },
      { "layer": "L2", "actor_role": "tech", "verb": "transfer", "object": "wrapped_tray", "t_start_s": 348.0, "t_end_s": 356.0, "target_zone": "sterilizer_cart", "confidence": "high" },
      { "layer": "L2", "actor_role": "tech", "verb": "place", "object": "wrapped_tray", "t_start_s": 356.0, "t_end_s": 360.0, "target_zone": "cart_shelf_2", "confidence": "high" }
    ],
    "L3": [
      { "layer": "L3", "object_id": "obj_needle_driver_01", "object_class": "needle_driver", "state": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "transition_from": { "zone": "instrument_basket", "sterility": "decontaminated", "in_count": false }, "t_s": 45.0, "count_event": null, "confidence": "high" },
      { "layer": "L3", "object_id": "obj_needle_driver_01", "object_class": "needle_driver", "state": { "zone": "tray_well_3", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "t_s": 209.0, "count_event": "added_to_tray", "confidence": "high" },
      { "layer": "L3", "object_id": "obj_debakey_forceps_01", "object_class": "debakey_forceps", "state": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "transition_from": { "zone": "instrument_basket", "sterility": "decontaminated", "in_count": false }, "t_s": 39.5, "count_event": null, "confidence": "high" },
      { "layer": "L3", "object_id": "obj_debakey_forceps_01", "object_class": "debakey_forceps", "state": { "zone": "tray_well_2", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "t_s": 203.0, "count_event": "added_to_tray", "confidence": "high" },
      { "layer": "L3", "object_id": "obj_debakey_forceps_01", "object_class": "debakey_forceps", "state": { "zone": "tray_well_2", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "tray_well_2", "sterility": "decontaminated", "in_count": true }, "t_s": 276.0, "count_event": "recount", "confidence": "high" },
      { "layer": "L3", "object_id": "obj_metz_scissors_01", "object_class": "metzenbaum_scissors", "state": { "zone": "absent", "sterility": "unknown", "in_count": false }, "transition_from": null, "t_s": 88.0, "count_event": "discrepancy_flagged", "confidence": "high", "note": "EXPECTED-BUT-ABSENT object — first-class in v0.1 via expected_contents manifest + 'absent' zone" },
      { "layer": "L3", "object_id": "obj_metz_scissors_01", "object_class": "metzenbaum_scissors", "state": { "zone": "absent", "sterility": "unknown", "in_count": false }, "transition_from": null, "t_s": 148.0, "count_event": "substituted_out", "confidence": "medium" },
      { "layer": "L3", "object_id": "obj_metz_scissors_sub_01", "object_class": "metzenbaum_scissors", "state": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "transition_from": { "zone": "pass_through", "sterility": "decontaminated", "in_count": false }, "t_s": 158.0, "count_event": "substituted_in", "confidence": "high", "note": "first observation mid-episode via handoff" },
      { "layer": "L3", "object_id": "obj_metz_scissors_sub_01", "object_class": "metzenbaum_scissors", "state": { "zone": "tray_well_4", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "staging_mat", "sterility": "decontaminated", "in_count": false }, "t_s": 228.0, "count_event": "added_to_tray", "confidence": "high", "note": "wrong well" },
      { "layer": "L3", "object_id": "obj_metz_scissors_sub_01", "object_class": "metzenbaum_scissors", "state": { "zone": "tray_well_5", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "tray_well_4", "sterility": "decontaminated", "in_count": true }, "t_s": 238.0, "count_event": "relocated_within_tray", "confidence": "high", "note": "within-tray rework move" },
      { "layer": "L3", "object_id": "obj_metz_scissors_sub_01", "object_class": "metzenbaum_scissors", "state": { "zone": "tray_well_5", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "tray_well_5", "sterility": "decontaminated", "in_count": true }, "t_s": 280.0, "count_event": "recount", "confidence": "high" },
      { "layer": "L3", "object_id": "obj_needle_driver_01", "object_class": "needle_driver", "state": { "zone": "tray_well_3", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "tray_well_3", "sterility": "decontaminated", "in_count": true }, "t_s": 274.0, "count_event": "recount", "confidence": "high" },
      { "layer": "L3", "object_id": "obj_metz_scissors_sub_01", "object_class": "metzenbaum_scissors", "state": { "zone": "wrapped_tray", "sterility": "decontaminated", "in_count": true }, "transition_from": { "zone": "tray_well_5", "sterility": "decontaminated", "in_count": true }, "t_s": 318.0, "count_event": null, "confidence": "medium", "note": "containment at wrap per v0.1 convention — one representative transition; serializers expand to all in_count objects" }
    ],
    "L4": [
      { "layer": "L4", "label_id": "l4-synth-01", "event_type": "exception", "subtype": "workflow_blocked_missing_item", "t_start_s": 88.0, "t_end_s": 152.0, "triggered_by": "verify_count", "resolution": "resolved_substitution", "severity": "minor", "actor_role": "tech", "deviation_from_protocol_ref": null, "protocol_followed_ref": null, "confidence": "medium", "note": "v0.1 'exception' type (task-intrinsic)" },
      { "layer": "L4", "label_id": "l4-synth-02", "event_type": "handoff", "subtype": "instrument_delivery", "t_start_s": 152.0, "t_end_s": 158.0, "triggered_by": "exception_handling", "resolution": "completed", "severity": "minor", "actor_role": "tech2", "counterparty_role": "tech", "deviation_from_protocol_ref": null, "protocol_followed_ref": null, "caused_by": ["l4-synth-01"], "confidence": "high", "note": "receiver encoded via counterparty_role; caused_by links to the exception" },
      { "layer": "L4", "label_id": "l4-synth-03", "event_type": "exception", "subtype": "sanctioned_substitution", "t_start_s": 112.0, "t_end_s": 238.0, "triggered_by": "verify_count", "resolution": "resolved_per_substitution_protocol", "severity": "minor", "actor_role": "tech", "deviation_from_protocol_ref": null, "protocol_followed_ref": "SUB-CHART-GEN-MIN-REV-B", "caused_by": ["l4-synth-01"], "confidence": "medium", "note": "PROTOCOL-CORRECT: deviation ref null, authorizing protocol cited via protocol_followed_ref" },
      { "layer": "L4", "label_id": "l4-synth-04", "event_type": "rework", "subtype": "tray_map_misplacement_fix", "t_start_s": 228.0, "t_end_s": 238.0, "triggered_by": "place_in_tray", "resolution": "resolved_repositioned", "severity": "minor", "actor_role": "tech", "deviation_from_protocol_ref": null, "protocol_followed_ref": null, "confidence": "high" }
    ]
  },
  "rlds_excerpt": {
    "_note": "A 2-second derived RLDS slice (t=234.0-236.0 s) inside the rework, with two L4 events simultaneously active. Derived view at 1 Hz decimation; the sidecar above remains the source of truth. reward is 0.0 throughout: reward shaping is the buyer's job; we ship events only.",
    "episode_id": "kr-spd-synthetic-0001",
    "synthetic": true,
    "slice": { "t_start_s": 234.0, "t_end_s": 236.0, "decimation_hz": 1 },
    "rlds_steps": [
      {
        "t_s": 234.0, "is_first": false, "is_last": false, "is_terminal": false,
        "observation": {
          "phase": "assemble", "step": "place_in_tray",
          "active_triplet": ["tech", "place", "metz_scissors_sub"],
          "object_states": {
            "obj_needle_driver_01": { "zone": "tray_well_3", "sterility": "decontaminated", "in_count": true },
            "obj_debakey_forceps_01": { "zone": "tray_well_2", "sterility": "decontaminated", "in_count": true },
            "obj_metz_scissors_01": { "zone": "absent", "sterility": "unknown", "in_count": false },
            "obj_metz_scissors_sub_01": { "zone": "tray_well_4", "sterility": "decontaminated", "in_count": true }
          },
          "context_events": [
            { "label_id": "l4-synth-03", "event_type": "exception", "subtype": "sanctioned_substitution", "severity": "minor" },
            { "label_id": "l4-synth-04", "event_type": "rework", "subtype": "tray_map_misplacement_fix", "severity": "minor" }
          ]
        },
        "action": { "actor_role": "tech", "verb": "place", "target_zone": "tray_well_5" },
        "reward": 0.0, "discount": 1.0
      },
      {
        "t_s": 235.0, "is_first": false, "is_last": false, "is_terminal": false,
        "observation": {
          "phase": "assemble", "step": "place_in_tray",
          "active_triplet": ["tech", "place", "metz_scissors_sub"],
          "object_states": {
            "obj_needle_driver_01": { "zone": "tray_well_3", "sterility": "decontaminated", "in_count": true },
            "obj_debakey_forceps_01": { "zone": "tray_well_2", "sterility": "decontaminated", "in_count": true },
            "obj_metz_scissors_01": { "zone": "absent", "sterility": "unknown", "in_count": false },
            "obj_metz_scissors_sub_01": { "zone": "tray_well_4", "sterility": "decontaminated", "in_count": true }
          },
          "context_events": [
            { "label_id": "l4-synth-03", "event_type": "exception", "subtype": "sanctioned_substitution", "severity": "minor" },
            { "label_id": "l4-synth-04", "event_type": "rework", "subtype": "tray_map_misplacement_fix", "severity": "minor" }
          ]
        },
        "action": { "actor_role": "tech", "verb": "place", "target_zone": "tray_well_5" },
        "reward": 0.0, "discount": 1.0
      }
    ]
  }
}
