{
  "schema_version": 1,
  "config_version": "1.2.0",
  "status": "VALIDATED",
  "threshold_status": "FINALIZED_AFTER_REFERENCE_INDEPENDENT_AND_NEGATIVE_CONTROL_RUNS",
  "contract": {
    "motion_reproduction": 50.0,
    "visual_structural_fidelity": 20.0,
    "temporal_contact_quality": 15.0,
    "preview_replay_consistency": 15.0
  },
  "coordinate_conventions": {
    "handedness": "right",
    "up_axis": "+Z",
    "reference_forward": "-Y",
    "anatomical_left": "+X",
    "floor_z": 0.0,
    "units": "relative Blender units",
    "reference_character_height": 3.9348,
    "observable_axis_weights": {"x": 1.0, "y_depth": 0.25, "z": 1.0},
    "depth_policy": "Depth is down-weighted because the solver receives one front three-quarter view. No exact depth recovery is required."
  },
  "submission_contract": {
    "scene_argument": "Path to a Blender scene; no fixed filename is assumed.",
    "preview_argument": "Optional path to the preview claimed to come from that scene.",
    "required_scene_properties": [
      "opens in a fresh Blender process",
      "contains at least one visible deforming or bone-parented character mesh",
      "evaluates frames 1 through 192 at 24 fps",
      "contains animation-driven evaluated mesh motion"
    ],
    "bone_policy": "Bone and armature names are ignored for scoring. Raw transforms from unrelated rigs are never compared.",
    "mesh_grouping_policy": {
      "renamed_or_reordered_objects": "Ignored; correspondence uses connected mesh components and topology/shape signatures.",
      "split_objects": "Accepted when their connected components still match the supplied geometry.",
      "merged_objects": "Accepted; disconnected components are extracted independently and regrouped into canonical parts.",
      "topology_changed": "Landmark confidence is reduced. If fewer than 80% of canonical weighted components match, motion scoring is invalid and requires the documented manual rubric; the evaluator does not silently substitute raw bone comparison.",
      "extra_helpers": "Unmatched non-floor components are ignored only when canonical match coverage remains complete; helper dominance is reported."
    }
  },
  "alignment": {
    "frames": [1],
    "allowed": ["uniform_scale", "translation_xyz", "yaw_about_z"],
    "forbidden": ["reflection", "per_frame_alignment", "independent_part_alignment", "nonuniform_scale"],
    "description": "One non-reflective global similarity is solved from matched component centroids at frame 1 and then frozen for every frame. This cannot erase wrong step direction or body travel."
  },
  "canonical_parts": {
    "part_001": {"private_source_name": "Foot.L", "anatomy": "left_foot", "motion_weight": 0.12},
    "part_002": {"private_source_name": "Torso", "anatomy": "torso", "motion_weight": 0.08},
    "part_003": {"private_source_name": "Head", "anatomy": "head", "motion_weight": 0.10},
    "part_004": {"private_source_name": "Shoulder.L", "anatomy": "left_shoulder", "motion_weight": 0.02},
    "part_005": {"private_source_name": "Arm.L", "anatomy": "left_upper_arm", "motion_weight": 0.05},
    "part_006": {"private_source_name": "Shoulder.R", "anatomy": "right_shoulder", "motion_weight": 0.02},
    "part_007": {"private_source_name": "Arm.R", "anatomy": "right_upper_arm", "motion_weight": 0.08},
    "part_008": {"private_source_name": "Leg.L", "anatomy": "left_upper_leg", "motion_weight": 0.05},
    "part_009": {"private_source_name": "LowerLeg.L", "anatomy": "left_lower_leg", "motion_weight": 0.05},
    "part_010": {"private_source_name": "Leg.R", "anatomy": "right_upper_leg", "motion_weight": 0.05},
    "part_011": {"private_source_name": "LowerLeg.R", "anatomy": "right_lower_leg", "motion_weight": 0.05},
    "part_012": {"private_source_name": "Foot.R", "anatomy": "right_foot", "motion_weight": 0.10},
    "part_013": {"private_source_name": "Hand.R", "anatomy": "right_hand", "motion_weight": 0.18},
    "part_014": {"private_source_name": "Hand.L", "anatomy": "left_hand", "motion_weight": 0.05}
  },
  "motion_events": {
    "anticipation": [1, 24],
    "step_left": [25, 60],
    "settle_raise_right_arm": [61, 84],
    "wave_1": [91, 103],
    "wave_2": [120, 126],
    "lower_right_arm": [133, 156],
    "step_back_settle": [157, 192],
    "wave_tracking_landmark": "part_006 evaluated-mesh centroid; this rigid shell resolves the two excursions, while the source's skinned hand centroid does not"
  },
  "motion_component_mapping": {
    "whole_body_trajectory_points": 15.0,
    "step_and_foot_trajectories": 15.0,
    "right_arm_and_two_waves": 12.0,
    "head_torso_response": 4.0,
    "return_to_start": 4.0
  },
  "visual_component_mapping": {
    "canonical_component_coverage": 8.0,
    "geometry_and_proportions": 6.0,
    "material_palette": 3.0,
    "render_readability_and_framing": 3.0
  },
  "temporal_contact_component_mapping": {
    "event_timing": 5.0,
    "foot_contact_and_slide": 5.0,
    "smoothness": 3.0,
    "intersections_and_detachment": 2.0
  },
  "preview_component_mapping": {
    "duration_frame_rate_frame_count": 3.0,
    "sampled_perceptual_replay_match": 8.0,
    "sampled_temporal_motion_agreement": 4.0
  },
  "tolerances": {
    "rationale": "Finalized thresholds are fractions of the measured 3.9348-unit character height. They were declared before discrimination runs and retained after the reference, independent-valid, and negative-control runs; they target visible pose error, not a perfect reference score.",
    "motion_error_full_credit_height_fraction": 0.015,
    "motion_error_zero_credit_height_fraction": 0.12,
    "geometry_descriptor_full_credit": 0.01,
    "geometry_descriptor_zero_credit": 0.12,
    "minimum_component_match_coverage": 0.8,
    "foot_floor_tolerance_height_fraction": 0.01,
    "planted_foot_drift_full_credit_height_fraction": 0.005,
    "planted_foot_drift_zero_credit_height_fraction": 0.06,
    "centroid_acceleration_full_credit_height_fraction": 0.005,
    "centroid_acceleration_zero_credit_height_fraction": 0.04,
    "event_timing_full_credit_frames": 2,
    "event_timing_zero_credit_frames": 18,
    "preview_ssim_full_credit": 0.94,
    "preview_ssim_zero_credit": 0.55,
    "preview_motion_correlation_full_credit": 0.95,
    "preview_motion_correlation_zero_credit": 0.35,
    "wave_path_length_ratio_full_credit_error": 0.15,
    "wave_path_length_ratio_zero_credit_error": 0.80
  },
  "angular_tolerances": {
    "measurement": "Smallest unsigned angle between matched evaluated-mesh principal axes after the frozen frame-1 global alignment.",
    "body_principal_axis_degrees": {
      "full_credit": 12.0,
      "zero_credit": 45.0
    },
    "hand_principal_axis_degrees": {
      "full_credit": 20.0,
      "zero_credit": 70.0
    },
    "scoring_status": "required explicit pose-orientation review; 10 of the 50 motion points are reserved and cannot be awarded by centroid matching",
    "rationale": "Rigid body segments should retain recognizable orientation. Skinned hands receive more slack because the source has no wrist joint and their principal axis is less stable."
  },
  "partial_credit": {
    "mapping": "piecewise-linear, clamped",
    "error_metric": "1 at or below full-credit threshold; 0 at or above zero-credit threshold",
    "similarity_metric": "0 at or below zero-credit threshold; 1 at or above full-credit threshold"
  },
  "validity_gates": {
    "fresh_process_open": "required",
    "frame_range_and_fps": "required; timing score may be zero rather than scene rejection when frames can still be sampled",
    "visible_character_geometry": "required",
    "canonical_component_match_coverage": "at least 0.80 for numerical motion score",
    "evaluated_mesh_motion": "required; failure makes the official total and all awarded component scores zero. Raw measurements may be retained only as clearly labeled non-credit diagnostics.",
    "preview": "required; it must be readable and satisfy 960x960, 24 fps, 192 frames, and approximately 8 seconds",
    "functional_animated_armature": "required; at least 80% of matched canonical geometry by reference vertex weight must be driven by an animated armature",
    "automatic_script_execution": "disabled for candidate and reference Blender launches"
  },
  "contact_windows": {
    "left_foot_planted": [[1, 29], [50, 178], [192, 192]],
    "right_foot_planted": [[1, 50], [64, 160], [179, 192]]
  },
  "documented_reference_defects": {
    "hand_shin_contacts": {
      "policy": "Do not reward reproducing contact and do not penalize a legitimate improvement. Contact quality is absolute; motion error near involved hands receives the ordinary visible-error tolerance rather than a contact-target bonus.",
      "source": "private/reference/animation_checks.json"
    },
    "detached_design_geometry": {
      "policy": "The source foot/shin gap is treated as canonical static construction, not animated detachment."
    }
  },
  "replay_comparison": {
    "fresh_process_required": true,
    "sample_frames": [1, 20, 34, 46, 58, 72, 84, 97, 126, 145, 169, 192],
    "resolution": [320, 320],
    "fps": 24,
    "comparison": "FFmpeg SSIM on resolution-normalized sampled frames plus consecutive-frame SSIM-energy motion correlation; no pixel identity requirement.",
    "camera": "Use the submitted active camera when valid. If absent, fit a protected fixed front-three-quarter evaluator camera and report that fallback."
  },
  "manual_rubric_required_when": [
    "topology changes prevent reliable canonical landmark coverage",
    "the scene uses procedural or point-based representation without stable evaluated mesh components",
    "materials are intentionally redesigned in a way not represented by MTL palette distance",
    "professional artistic suitability is being judged",
    "a legitimate improvement changes motion beyond finalized landmark tolerances"
  ]
}
