| name | review-renderer-fallback |
| description | Review changes to renderer capability probing, fallback chains, timeout logic, or audio worklet initialization. Use when a PR touches src/js/core/renderer-*, src/js/core/audio-handler.ts, or src/js/milkdrop/runtime/backend-fallback.ts. |
Review Renderer Fallback and Capability Lifecycle
Use this skill when reviewing or authoring changes to renderer setup, capability probing, fallback transitions, timeout handling, or audio worklet paths.
Why this exists
~8% of fix commits are in the fallback chain — now the smallest category: WebGPU timeout regressions, renderScale propagation failures, analyser worklet path breaks, and capability probe drift. The fallback state machine (Sprint 7) may have reduced the rate further. This skill hardens that boundary.
Pre-merge checklist
1. Fallback transitions must be explicit
2. renderScale propagation end-to-end
3. Audio worklet validated on fallback path
4. Timeout and cleanup
5. Property-based mindset
What to reject in review
- Nested
if/else fallback chains deeper than 2 levels without a state-machine refactor
- renderScale computed in one file and applied in another without a typed contract
- Audio worklet initialization that assumes a specific backend is already chosen
- Missing tests for new timeout or fallback branches
Related skills