# Mika Live2D Motion Quality Audit

- status: `ready-for-cubism-authoring`
- strictReady: `false`
- auditOnly: `true`

## Summary

- Mika motions: 7 files; curve count 4–52, average 13.57.
- Below minimum: 7 files; below ideal: 7 files.
- Reference `mao_pro`: 7 files; curve count 132–132, average 132.
- Default mode is audit-only. Use `--strict` after Cubism-authored motion replacement is delivered.

## Mika Motion Rows

| group | file | duration | loop | curves | min | ideal | gap(min) | status |
| --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| idle | `idle.motion3.json` | 3.0 | true | 4 | 80 | 100 | 76 | curve-count-below-minimum |
| greeting | `greeting.motion3.json` | 1.2 | false | 4 | 90 | 110 | 86 | curve-count-below-minimum |
| lyric-reading | `lyric-reading.motion3.json` | 1.0 | false | 5 | 80 | 100 | 75 | curve-count-below-minimum |
| point-lyrics | `point-lyrics.motion3.json` | 1.0 | false | 8 | 100 | 120 | 92 | curve-count-below-minimum |
| rhythm-sway | `rhythm-sway.motion3.json` | 4.0 | true | 15 | 100 | 120 | 85 | curve-count-below-minimum |
| chorus-gesture | `chorus-gesture.motion3.json` | 2.0 | false | 7 | 110 | 130 | 103 | curve-count-below-minimum |
| soft-dance-loop | `soft-dance-loop.motion3.json` | 8.0 | true | 52 | 120 | 140 | 68 | curve-count-below-minimum |

## Next Steps

1. Re-author the seven Mika motions in Cubism Editor according to `reports/mika-live2d-motion-authoring-work-order.md`.
2. Replace `live2d-models/mika_live2d/runtime/motions/*.motion3.json` and update `mika_live2d.model3.json` if needed.
3. Run `python3 tools/live2d/audit_mika_live2d_motion_quality.py --strict`.
4. Run full verify, deploy, and smoke-test LearnMore lyrics-rail visibility.
