Game guide · source of truth
AI process

Task card template

Copy this card when splitting milestone work into ≤ 60-minute tasks. Every field is required.

Copy into logs/cards/<ID>.md (or straight into the agent prompt) when you split a milestone group into tasks.

## <ID> · <imperative title, one behaviour>
- Milestone / lane: M4 / Characters & animation
- Size: S (30–60 min) | M (1–2 h) | L (2–4 h; split if possible)
- Reads: docs/production/ANIMATION.md#retargeting, packages/game-data/data/skills.json (warblade.*)
- Changes: apps/client-unity/Assets/Zoen/Anim/Retarget.cs, tools/blender/retarget.py
- Acceptance (testable):
  1. Retargeted Horizon Cleave contact frame within ±1 frame of skills.json timing (0.28 s + 0.12 s)
  2. Foot slide < 2 cm over the clip (measured by tools/anim/footslide.mjs)
- Test command: pnpm --filter @zoen/client test retarget
- Evidence: logs/evidence/<ID>/side-by-side.webm (10 s)
- Out of scope: hand IK polish (next task)
- Risks / fallback: if Rigify bone names differ, use the mapping table in ANIMATION.md

◆Splitting examples

Group (roadmap)Good tasks
"18 skills through the skill gate"one skill = 5–7 tasks: timing contract test → greybox anim → VFX Low → VFX High → SFX → reaction → review clip
"Heightmap + splat generator"noise + seed determinism → road carving → slope mask → zone masks → splat export → validator
"Inventory transactions"schema + migration → move item tx → split stack tx → fuzz dupe test → UI wiring

◆Anti-patterns

  • "Implement combat." Too big, and it can't be tested in one step.
  • "Polish VFX." No acceptance criteria. Name the effect, the budget and the reference.
  • Tasks with no test because "it's visual". Visual tasks still assert render success, budgets and zero errors, and they attach a clip.

Source: zoen/docs/process/TASK_TEMPLATE.md · 302 words · edit the Markdown, not this page.