{
  "schemaVersion": 1,
  "taskId": "graphic-shape-match-cut",
  "creationKind": "original-geometric-shot-inputs-and-bilingual-method",
  "evidenceClass": "method-not-independently-tested",
  "fictionalScene": true,
  "primaryInputFile": "S01-first-frame.png",
  "defaultShotId": "S01",
  "inputCount": 2,
  "uploadedInputPolicy": "Every S01/S02/S03 PNG is role=input. One image per independent base H3 task. Default CTA S01 only; later shots require new manual tasks and external editing. No storyboard grid or automatic assembly.",
  "shots": [
    {
      "id": "S01",
      "inputFile": "S01-first-frame.png",
      "role": "input",
      "label": {
        "en": "Circular window scene",
        "zh": "圆窗场景"
      },
      "originalPrompt": {
        "en": "Start from this original circular-window illustration. Hold a locked front view with the same selected outer circular opening centered in the frame. Preserve the rigid wall, opening boundary and quiet scene through the window. Keep movement minimal; a very small ambient light change may occur without moving the camera or changing the circular shape. Do not zoom, reshape the opening, introduce text, transform the wall into an object or cut to another scene. End on a stable readable circle. This is one source shot for a later manually edited hard cut.",
        "zh": "从这张原创圆窗插画开始，保持固定正面视角，让选定的外圆洞口仍在画面中央。保留刚性墙面、洞口边界及窗外安静场景，只允许很轻的环境光变化，不移动机位或改变圆形。不要推拉、重塑洞口、加入文字、把墙变成物件或自动切换场景。以稳定清楚的圆形结束，供后续人工硬切使用。"
      }
    },
    {
      "id": "S02",
      "inputFile": "S02-first-frame.png",
      "role": "input",
      "label": {
        "en": "Plain circular disc scene",
        "zh": "无品牌圆盘场景"
      },
      "originalPrompt": {
        "en": "Use this original plain-disc scene as a separate independent shot. Keep a locked front-facing view of the ochre circular disc and its existing outer boundary. Preserve the disc center, tabletop arrangement and rigid round silhouette with only minimal ambient light variation. Do not change its size deliberately, move the camera, add branding, turn it into a window or insert a transition. Hold a clear circle at the ending. The preceding window clip will remain a different scene; a human editor will align actual frames and make a direct cut.",
        "zh": "把这张原创无品牌圆盘场景用于另一条独立镜头，固定正面视角，保留赭色圆盘及既有外边界。保持圆心、桌面摆放和刚性圆轮廓，只允许极轻的环境光变化。不要刻意改变尺寸、移动机位、加品牌、把圆盘变成窗或插入转场。结尾保持清楚圆形。前一条圆窗片段仍是不同场景，真实画格的对齐及直接切换由人完成。"
      }
    }
  ],
  "geometryFile": "match-geometry.json",
  "goals": {
    "en": "Move from a circular window to a circular object by making a hard cut between two separate scenes. The viewer follows the selected shape and position while the background changes immediately. This is an editing decision, not a request for a continuous AI morph.",
    "zh": "在两个独立场景之间硬切，从圆形窗转到圆形物件。观众跟随选定轮廓与位置，背景则立即变化。这是剪辑决策，不是要求 AI 连续变形。"
  },
  "acceptance": {
    "en": [
      "The same selected outer-circle boundary is used for both alignment measurements.",
      "The retained circle centers and scales are compared after the actual edit, with any crop/scale adjustment recorded.",
      "The background changes at an explicit hard cut; no dissolve or continuous shape morph is mislabeled as the result.",
      "Both original scene inputs and unedited source files remain identifiable; no generated-match claim is inferred from the drawings."
    ],
    "zh": [
      "两侧对齐始终测量预先选定的同一类外圆边界。",
      "在真实编辑后比较中心与尺度，任何裁切、缩放调整均有记录。",
      "背景在明确硬切处改变，不把叠化或连续形变标成硬切成果。",
      "两张原始场景输入及未编辑源文件仍可辨认，不从插画推断模型已经匹配。"
    ]
  },
  "ending": {
    "en": "The deliverable is two source scenes plus an explicit editorial cut with documented shape alignment. Keep the unedited source clips and the crop/scale decisions so the join is reproducible. This package has not generated those clips or executed an edit. It supplies original first frames, two prompts and blank geometry-review files.",
    "zh": "交付应包含两条场景源片，以及记录了形状对齐决策的明确剪辑点。保留未编辑源片与裁切、缩放决定，便于复现连接。本包尚未生成这些片段，也未执行剪辑；目前只提供原创首图、两条提示词及空白几何检查文件。"
  },
  "modelRuns": 0,
  "modelOutputAssets": [],
  "finishedEdits": 0,
  "paidCalls": 0,
  "historicalExactTaskQueryObserved": false,
  "exactTaskSearchVolume": null
}
