{
  "schema_version": "1.0.0",
  "model_id": "005",
  "reference_version": "0.1.0",
  "height": {
    "cm": null,
    "status": "not_specified",
    "basis": "Real person; no height supplied and none is inferred from images."
  },
  "voice": {
    "status": "pending_owner",
    "provider": "ElevenLabs",
    "key_secret": "ELEVENLABS_KEY",
    "notes": "The owner will add her voice later; no sample or voice proof yet."
  },
  "renderer": {
    "status": "access_verified_actual_jobs_reviewed",
    "provider": "kie",
    "model_id": "kling-3.0/video",
    "model_version": "kling-3.0 pro",
    "model_revision_note": "Pinned requested provider route; immutable serving revision is not exposed.",
    "mode": "pro",
    "resolution": "provider_native",
    "seed_control": false,
    "settings": {
      "duration": "5",
      "sound": false,
      "multi_shots": false,
      "kling_elements": "one element 'myle' with face 000, face 045 and body 000 (v0.1.0)"
    },
    "observed_output_by_job": {
      "turn": {
        "width": 1072,
        "height": 1928,
        "duration_seconds": 5.041667,
        "average_frame_rate": "24/1",
        "codec": "h264",
        "audio_streams": 0
      },
      "walk": {
        "width": 1072,
        "height": 1928,
        "duration_seconds": 5.041667,
        "average_frame_rate": "24/1",
        "codec": "h264",
        "audio_streams": 0
      },
      "sit": {
        "width": 1072,
        "height": 1928,
        "duration_seconds": 5.041667,
        "average_frame_rate": "24/1",
        "codec": "h264",
        "audio_streams": 0
      },
      "talk": {
        "width": 1292,
        "height": 1604,
        "duration_seconds": 5.041667,
        "average_frame_rate": "24/1",
        "codec": "h264",
        "audio_streams": 0
      }
    },
    "api_source_url": "https://docs.kie.ai/market/kling/kling-3-0",
    "price_source_url": "https://kie.ai/kling-3-0",
    "price_checked_date": "2026-10-31",
    "rate": "18 credits per second in pro mode without audio ($0.09/s at list); observed 90 credits per 5 s clip",
    "selection_basis": "Kling handles this real person's likeness; Seedance 2.x tops the Artificial Analysis image-to-video board but blocks real-person faces at the model layer. The 4K mode exists but adds cost and file weight for reference clips delivered at 1080p."
  },
  "caps": {
    "external_api_total_usd_micros": 10000000,
    "topups_allowed": false,
    "max_motion_test_attempts_per_shot": 2,
    "motion_test_resolution": "provider_native",
    "final_resolution": "1080p",
    "final_only_if_needed": true,
    "max_upscale_or_edit_passes": 1,
    "motion_test_max_seconds": 5,
    "initial_submissions_per_shot": 1,
    "automatic_retry_after_unknown_submission": false,
    "note": "Owner 2026-11-03: 'same as other designs'; cap set at $10 to match model 004 (last two packs $8-9). No voice proof this run."
  },
  "workflow": [
    {
      "stage": "references",
      "rule": "Done in v0.1.0: restored face and body anchors, eight body angles, five face turns, three expressions, two scene frames and a hero anchor at 4K. My-le reviews before production use."
    },
    {
      "stage": "shot_brief",
      "rule": "Define one action, scene, camera, lighting, wardrobe, aspect ratio, duration and the approved script, if any."
    },
    {
      "stage": "scene_first_frame",
      "rule": "Create one scene still. Review face, beard, glasses and anatomy before motion; record reviewer and image hash."
    },
    {
      "stage": "motion_test",
      "rule": "Short native-resolution test from the accepted first frame. At most two attempts per shot."
    },
    {
      "stage": "qa",
      "rule": "Check face, beard, glasses, hands, hair, flicker, motion continuity and audio when present. Reject drift."
    },
    {
      "stage": "final",
      "rule": "Render 1080p only after an accepted test. Darren approves any clip of him speaking before release."
    }
  ],
  "cache_policy": "Hash the exact reference bytes, prompt, provider/model/version, settings, duration, resolution and audio options. Reuse accepted outputs; review existing outputs before retrying. A fixed seed is not an identity guarantee.",
  "cost_policy": "Cost per accepted deliverable includes all retries, discarded jobs, audio, LLM, finishing, storage and compute. Unknown cost stays unknown.",
  "cost_framework": {
    "slug": "ai-media-cost-framework",
    "version": 3,
    "canonical_url": "https://projects.jbnx.io/framework/ai-media-cost-framework"
  },
  "motion_tests": [
    {
      "id": "turn",
      "label": "Turn",
      "status": "accepted",
      "attempts": 1,
      "asset_path": "assets/my-le-motion-turn-v001.mp4",
      "qa_status": "accepted",
      "usage_label": "Lead-reviewed working motion baseline; shot-specific production review still required.",
      "first_frame_asset_id": "my-le-motion-floor-v001",
      "first_frame_review_status": "accepted_working_test_input",
      "first_frame_sha256": "15206276f1c70d2f944639e0cfc8a262dd58f485383978157f379db6d9f945d2",
      "provider_job_id": "0617c7af5cc542ed3598dd43f1835469",
      "credits_consumed": 90,
      "reason": "Deviation: Kling turned her toward image right and stopped at about three-quarter instead of a full left profile; accepted for identity and motion quality.",
      "qa_reviewer": "lead agent 1099:claude-chat-c1d3 (automated-session visual review) + ArcFace and Jev scores",
      "qa_reviewed_at": "2026-11-03T19:00:00+00:00",
      "qa_checks": {
        "visual_identity": "passed",
        "hands_feet_ground_contact": "passed",
        "added_text_scan": "clean: no added text, captions or logos (max frame ratio under 1.6x the first frame)"
      }
    },
    {
      "id": "walk",
      "label": "Walk",
      "status": "accepted",
      "attempts": 2,
      "asset_path": "assets/my-le-motion-walk-v001.mp4",
      "qa_status": "accepted",
      "usage_label": "Lead-reviewed working motion baseline; shot-specific production review still required.",
      "first_frame_asset_id": "my-le-motion-floor-v001",
      "first_frame_review_status": "accepted_working_test_input",
      "first_frame_sha256": "15206276f1c70d2f944639e0cfc8a262dd58f485383978157f379db6d9f945d2",
      "provider_job_id": "1642763c7ca0d5eddf6f1ba69b0a2b8b",
      "credits_consumed": 90,
      "reason": "Second attempt: she shifts back a step, then walks toward the camera; continuous but short travel. The first attempt jumped back mid-clip and was rejected.",
      "qa_reviewer": "lead agent 1099:claude-chat-c1d3 (automated-session visual review) + ArcFace and Jev scores",
      "qa_reviewed_at": "2026-11-03T19:00:00+00:00",
      "qa_checks": {
        "visual_identity": "passed",
        "hands_feet_ground_contact": "passed",
        "added_text_scan": "clean: no added text, captions or logos (max frame ratio under 1.6x the first frame)"
      }
    },
    {
      "id": "sit",
      "label": "Sit",
      "status": "accepted",
      "attempts": 1,
      "asset_path": "assets/my-le-motion-sit-v001.mp4",
      "qa_status": "accepted",
      "usage_label": "Lead-reviewed working motion baseline; shot-specific production review still required.",
      "first_frame_asset_id": "my-le-motion-chair-v001",
      "first_frame_review_status": "accepted_working_test_input",
      "first_frame_sha256": "acab40e22c0f1631704784235b0f6740b66a53768faa59335a2d583ba40fdb29",
      "provider_job_id": "94fb066ae0839a8ab52384981ada8f2f",
      "credits_consumed": 90,
      "reason": "Turns and sits on the chair, then crosses her legs; hands and feet grounded.",
      "qa_reviewer": "lead agent 1099:claude-chat-c1d3 (automated-session visual review) + ArcFace and Jev scores",
      "qa_reviewed_at": "2026-11-03T19:00:00+00:00",
      "qa_checks": {
        "visual_identity": "passed",
        "hands_feet_ground_contact": "passed",
        "added_text_scan": "clean: no added text, captions or logos (max frame ratio under 1.6x the first frame)"
      }
    },
    {
      "id": "talk",
      "label": "Talk",
      "status": "accepted",
      "attempts": 1,
      "asset_path": "assets/my-le-motion-talk-v001.mp4",
      "qa_status": "accepted",
      "usage_label": "Lead-reviewed working motion baseline; shot-specific production review still required.",
      "first_frame_asset_id": "my-le-face-000-v001",
      "first_frame_review_status": "accepted_working_test_input",
      "first_frame_sha256": "545838061011a581e14bb2f50ba888620260361214d9c4d8608d1607892bafb0",
      "provider_job_id": "fa08aeb87765c62c3fd93165817e4200",
      "credits_consumed": 90,
      "reason": "Talks to the camera with natural head motion and blinks; a hand briefly enters the bottom edge.",
      "qa_reviewer": "lead agent 1099:claude-chat-c1d3 (automated-session visual review) + ArcFace and Jev scores",
      "qa_reviewed_at": "2026-11-03T19:00:00+00:00",
      "qa_checks": {
        "visual_identity": "passed",
        "hands_feet_ground_contact": "passed",
        "added_text_scan": "clean: no added text, captions or logos (max frame ratio under 1.6x the first frame)"
      }
    }
  ],
  "next_validation_step": "My-le reviews the references and motion baselines; the owner adds her voice. Each production scene still needs its own first-frame and motion review.",
  "reference_generation": {
    "stills": {
      "provider": "fal",
      "endpoint": "fal-ai/nano-banana-pro/edit",
      "resolution": "4K",
      "output_format": "png (stored as JPEG q95 4:4:4)",
      "seeds": [
        5005
      ],
      "inputs": [
        "my-le-face-source-v001",
        "my-le-body-source-v001",
        "front2-src (her-only crop, unpublished)",
        "close-src (her-only crop, unpublished)"
      ],
      "quoted_unit_usd_micros": 300000
    },
    "restoration": {
      "provider": "fal",
      "endpoint": "fal-ai/topaz/upscale/image",
      "face": "Recovery V2 4x on the face anchor (creativity 0)",
      "body": "Low Resolution V2 4x on the her-only body crop"
    },
    "runner": "temporary Supabase Edge Function jbnx-m005-v1-once (fixed jobs, token-gated, retired to 410 after use)"
  },
  "completion": {
    "status": "complete",
    "scope": "v0.1.0 reference pack and four motion baselines (voice to come)",
    "qa_report": "qa.json",
    "completed_at": "2026-11-03T19:00:00+00:00"
  },
  "status": "v0.1.0_reference_pack_complete"
}
