name: avatar-spokesperson
version: "2.0"
description: >
  Presenter-led avatar pipeline for spokesperson videos, internal updates, onboarding,
  sales intros, and short scripted explainers. Best for projects where a digital presenter
  is the anchor and support graphics stay simple. EP orchestration adds quality gates for
  lip-sync quality, presenter framing, and CTA landing.
category: custom
stability: production
default_checkpoint_policy: guided

orchestration:
  mode: executive-producer
  skill: pipelines/avatar-spokesperson/executive-producer
  budget_default_usd: 2.00
  max_revisions_per_stage: 3
  max_send_backs: 3
  max_wall_time_minutes: 12

required_skills:
  - pipelines/avatar-spokesperson/executive-producer
  - pipelines/avatar-spokesperson/idea-director
  - pipelines/avatar-spokesperson/script-director
  - pipelines/avatar-spokesperson/scene-director
  - pipelines/avatar-spokesperson/asset-director
  - pipelines/avatar-spokesperson/edit-director
  - pipelines/avatar-spokesperson/compose-director
  - pipelines/avatar-spokesperson/publish-director
  - meta/reviewer
  - meta/checkpoint-protocol

compatible_playbooks:
  - clean-professional
  - flat-motion-graphics

stages:
  - name: idea
    skill: pipelines/avatar-spokesperson/idea-director
    produces:
      - brief
    tools_available: []
    checkpoint_required: true
    human_approval_default: true
    review_focus:
      - Avatar path and source reality are explicit
      - CTA and audience fit the spokesperson format
      - Missing capabilities are surfaced before scripting
    success_criteria:
      - Schema-valid brief artifact
      - Brief records avatar path, narration source, and output shape

  - name: script
    skill: pipelines/avatar-spokesperson/script-director
    required_artifacts_in:
      - brief
    produces:
      - script
    optional_tools:
      - transcriber
    tools_available:
      - transcriber
    checkpoint_required: true
    human_approval_default: true
    review_focus:
      - Spoken copy is concise and natural
      - Scene breaks are realistic for avatar delivery
      - On-screen text remains restrained
    success_criteria:
      - Schema-valid script artifact
      - Script sections map to scene-safe presenter beats

  - name: scene_plan
    skill: pipelines/avatar-spokesperson/scene-director
    required_artifacts_in:
      - script
    optional_artifacts_in:
      - brief
    produces:
      - scene_plan
    tools_available: []
    checkpoint_required: true
    human_approval_default: true
    review_focus:
      - Speaker layout and background system are coherent
      - Support overlays remain secondary to the presenter
      - Aspect-ratio variants are planned realistically
    success_criteria:
      - Schema-valid scene_plan artifact
      - Every scene has a defined speaker and support treatment

  - name: assets
    skill: pipelines/avatar-spokesperson/asset-director
    required_artifacts_in:
      - scene_plan
      - script
    optional_artifacts_in:
      - brief
    produces:
      - asset_manifest
    optional_tools:
      - talking_head
      - lip_sync
      - tts_selector
      - subtitle_gen
      - image_selector
      - audio_enhance
      - video_selector
    tools_available:
      - talking_head
      - lip_sync
      - tts_selector
      - subtitle_gen
      - image_selector
      - audio_enhance
      - video_selector
    checkpoint_required: true
    human_approval_default: false
    review_focus:
      - Avatar generation path is explicit and honest (including no-avatar pivot if applicable)
      - Narration, subtitle, and background assets are aligned
      - Blocked paths are recorded instead of hidden
    success_criteria:
      - Schema-valid asset_manifest artifact
      - All referenced asset files exist on disk

  - name: edit
    skill: pipelines/avatar-spokesperson/edit-director
    required_artifacts_in:
      - scene_plan
      - asset_manifest
    optional_artifacts_in:
      - script
    produces:
      - edit_decisions
    tools_available: []
    checkpoint_required: true
    human_approval_default: false
    review_focus:
      - Presenter remains visually primary
      - Graphics and captions reinforce rather than crowd
      - CTA timing lands clearly
    success_criteria:
      - Schema-valid edit_decisions artifact
      - Edit decisions cover the planned deliverables

  - name: compose
    skill: pipelines/avatar-spokesperson/compose-director
    required_artifacts_in:
      - edit_decisions
      - asset_manifest
    optional_artifacts_in:
      - scene_plan
    produces:
      - render_report
    required_tools:
      - video_compose
      - audio_mixer
    optional_tools:
      - video_stitch
      - audio_enhance
    tools_available:
      - video_compose
      - audio_mixer
      - video_stitch
      - audio_enhance
    checkpoint_required: true
    human_approval_default: false
    review_focus:
      - Lip sync or mouth timing is acceptable for the chosen path
      - Subtitle placement and framing remain clean
      - Audio is clear and presenter-focused
    success_criteria:
      - Schema-valid render_report artifact
      - Output file exists and passes ffprobe validation

  - name: publish
    skill: pipelines/avatar-spokesperson/publish-director
    required_artifacts_in:
      - render_report
    optional_artifacts_in:
      - brief
      - script
    produces:
      - publish_log
    tools_available: []
    checkpoint_required: true
    human_approval_default: true
    review_focus:
      - Hero export and derivatives are clearly labeled
      - Metadata matches the spokesperson offer and audience
      - Thumbnail or poster frame features the presenter cleanly
    success_criteria:
      - Schema-valid publish_log artifact
      - Export package contains video and metadata outputs

