CAVA runs in background via cava-start.sh, writing bar values to
/tmp/skeledance_bars. A new QML DataSource polls that file at 80ms
and calls updateBars() in JS. Falls back to rest state when not playing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>