{
  "schema_version": "project-review/1",
  "project_id": "shape-recognition-insertion",
  "title": "形状认知投递",
  "updated_at": "2026-10-17T06:21:01.371110+00:00",
  "task": "按颜色和形状选择积木，投入匹配形状孔",
  "counts": {
    "raw_recordings_reported": 9,
    "raw_recordings_manifest_verified": 9,
    "timestamp_and_index_checked": 9,
    "raw_recordings_pending_inventory": 0,
    "candidate_segments": 1,
    "preview_clips": 2,
    "reviewed_training_episodes": 0
  },
  "count_scope": "当前九条为带前导空格的任务目录，编号0–8。旧81秒演示属于另一个三条目录，不计入此九条。2条为观看预览，尚未进行任务分段审核。",
  "quality": {
    "batch_status": "preliminary_timestamp_index_and_head_frame_checks_passed",
    "duration_s": 465.666841506958,
    "timestamp_and_index_checked": 9,
    "head_rgb_frames_sampled": 27,
    "head_rgb_frames_decoded": 27,
    "complete_video_decode_checked": 0,
    "historical_alignment": "pending",
    "historical_instruction": "unverified",
    "action_semantics": "unverified",
    "boundary_offset_min_s": 269.553729057312,
    "boundary_offset_max_s": 269.7377932071686,
    "head_rgb_max_gap_ms": 55.49788475036621,
    "head_rgb_gap_candidates": 22
  },
  "clock_update": {
    "live_clock_offset_resolved": true,
    "method": "Orin PTP + camera reinitialization",
    "requires_x86_ssh": false,
    "saved_new_recording_validation": "pending",
    "boot_persistence_verified": false
  },
  "examples": [
    {
      "id": "full_task_0",
      "source_name": " left_episode_abs_0.hdf5",
      "start_s": 20,
      "end_s": 39,
      "file": "yellow-triangle-full-preview.mp4",
      "status": "full_task_candidate",
      "description": "抓起黄色三角积木，投入三角孔",
      "outcome": "needs_review"
    },
    {
      "id": "batch_8",
      "label": "九条批次 · 第9条",
      "start_s": 18,
      "end_s": 28,
      "file": "batch-example-8.mp4",
      "status": "preview_only",
      "source_name": " left_episode_abs_8.hdf5",
      "source_stream": "head_rgbd/color",
      "playback": "source frames selected by timestamps, played at 30fps for preview; not training alignment"
    }
  ],
  "sampling_policy": {
    "state": "timestamp_index_all9_and_head_frames_all9_done",
    "all_recordings": [
      "文件可读、字段与长度",
      "时间戳单调性、间隔异常、时钟跳变",
      "视频解码、时长、缺失视角"
    ],
    "human_review": "本轮九条各首/中/末，共27张头部RGB原始帧已抽看；未完成全程视频和全部机位检查。后续按批次首/中/末记录加颜色/形状/布局覆盖，异常必查。",
    "per_recording": "开头/中间/结尾与关键抓取、入孔、人工复位事件；各机位至少首/中/末抽帧",
    "escalation": "发现异常先扩查同批同设置；重复异常则整批复查",
    "reporting": "分别报告检查覆盖数、异常数、未检查数；未覆盖部分不推算合格率"
  },
  "reference_recording": {
    "name": "left_episode_abs_2.hdf5",
    "in_current_nine": false,
    "duration_s": 81.310107,
    "candidate_segments": 6,
    "full_rgb_decode_streams": 5,
    "page": "review.html"
  },
  "clock_repair": {
    "script_status": "implemented_and_tested",
    "unit_tests_passed": 5,
    "provisional_copies_written": 9,
    "source_hashes_verified": 9,
    "non_timestamp_datasets_verified_unchanged": 9603,
    "physical_alignment": "pending",
    "training_ready": false,
    "report": "clock-repair-summary.json"
  },
  "annotation_trial": {
    "status": "model_draft",
    "full_task_candidates": 1,
    "reviewed_training_episodes": 0,
    "example": "full-task-draft.json"
  },
  "alerts": [
    {
      "id": "clock",
      "severity": "warning",
      "title": "旧数据的时间已初步修正，还要核对画面与动作",
      "affected_recordings": 9,
      "remediation": "九条分别写入相机时间修正版，原件保留",
      "status": "coarse_offset_corrected_fine_alignment_pending"
    },
    {
      "id": "video-gaps",
      "severity": "review",
      "title": "部分画面有遮挡，22处帧间隔偏长需要复看",
      "affected_count_unit": "head_rgb_intervals",
      "affected_count": 22,
      "status": "review_pending"
    }
  ],
  "annotation_policy": {
    "unit": "complete_pick_and_matching_hole_placement",
    "fields": [
      "start",
      "end",
      "task_description",
      "outcome"
    ],
    "preserve_all_action_stages": true,
    "original_instruction_distinct_from_hindsight": true,
    "uncertain_to_review": true
  }
}