{
  "version": "0.1.9-partial",
  "task_id": "rcua_video_blender_001",
  "score_range": [
    0,
    1
  ],
  "primary_metric": "weighted_partial_score",
  "auxiliary_metric": "strict_success",
  "weights_source": "Author-defined task rubric following weighted partial-credit practice; not official ALE weights",
  "aggregation": "sum(weight_percent/100 * criterion_pass). Each criterion is0/1 under unchanged geometric tolerances.",
  "criteria": [
    {
      "id": "body",
      "label": "机身形状与位置",
      "weight_percent": 20,
      "geometry_check": "body"
    },
    {
      "id": "nose",
      "label": "尖头形状与位置",
      "weight_percent": 15,
      "geometry_check": "nose"
    },
    {
      "id": "nozzle",
      "label": "喷口形状与位置",
      "weight_percent": 10,
      "geometry_check": "nozzle"
    },
    {
      "id": "fins",
      "label": "四片尾翼整体形状与布局",
      "weight_percent": 25,
      "geometry_check": "fins"
    },
    {
      "id": "window_shape",
      "label": "舷窗形状与位置",
      "weight_percent": 10,
      "geometry_check": "window"
    },
    {
      "id": "window_recess",
      "label": "舷窗中心凹陷",
      "weight_percent": 5,
      "geometry_check": "window_center_recess",
      "requires_geometry_checks": [
        "window"
      ]
    },
    {
      "id": "silhouette",
      "label": "四视角整体轮廓",
      "weight_percent": 10,
      "geometry_check": "multiview_silhouette"
    },
    {
      "id": "bounds",
      "label": "整体空间范围",
      "weight_percent": 5,
      "geometry_check": "bounded_geometry"
    }
  ],
  "eligibility": "Must save a valid editable native project on time, captured by trusted server and actually reopen/render. No save, corrupt or rejected latest save, no editable geometry =>0. Trusted runtime/reference/API faults =>null, never0.",
  "geometry": "Original name/topology-independent normalized multiview geometry checks are unchanged. Global normalization can couple part checks; these are not independent per-object identity tests.",
  "strict_success": "All original geometry checks pass and valid on-time editable native delivery.",
  "timing": "Same video90s, postvideo120s, work while watching;600s is a separately labeled diagnostic variant",
  "disclosure": "Rubric is frozen before new model calls. Earlier candidates may be rescored only as diagnostic calibration, not new rollouts.",
  "dependencies": "window_recess requires window shape/location check to pass; bare body cannot earn porthole recess credit"
}
