What
Harden and validate the complete CarPlay MVP across lifecycle, accessibility, playback, failure, and vehicle-interface variations.
Why
A CarPlay audio experience must remain usable while the phone is locked, recover from connection and audio interruptions, and avoid leaving the driver with stale or blocked controls. Individual feature tests do not replace end-to-end validation of the assembled experience.
How
- Exercise background-only and locked-phone cold launch, phone foreground transitions, CarPlay scene disconnect and reconnect, and repeated connection cycles.
- Verify PodHaven never starts playback merely because CarPlay connects and never requires the phone to be unlocked for supported listening flows.
- Cover network loss, cached playback, unavailable media, stale or deleted database rows, rapid repeated selection, cancelled loads, and audio-session interruption or reset.
- Validate that all list and navigation hierarchies respect runtime template limits and remain usable across representative display shapes and touch, rotary, and touchpad input.
- Verify light and dark appearance, concise labels and values, meaningful artwork fallbacks, selection/loading feedback, and clear reading order through the semantics CarPlay exposes.
- Confirm the iPhone, widget, lock-screen, headphone, and CarPlay surfaces continue to share one playback state and remote-command registration.
- Use CarPlay Simulator for representative manual flows and record any behavior that requires a physical vehicle or head unit as explicitly unverified rather than assuming it.
- Run focused suites, formatting checks, and the warning-free My Mac build required by the repository.
Done when
- Up Next, Episodes, Podcasts, and Now Playing pass an end-to-end CarPlay Simulator checklist.
- Locked-phone cold launch, disconnect, reconnect, interruption, offline or cached playback, and failure recovery have concrete verification.
- No flow autoplays on connection or requires foreground phone interaction.
- Accessibility labels, values, actions, selection state, progress, and reading order are understandable without relying on artwork or color.
- Existing non-CarPlay playback regressions remain green.
- All touched Swift files pass swift-format and the final build has zero warnings.
What
Harden and validate the complete CarPlay MVP across lifecycle, accessibility, playback, failure, and vehicle-interface variations.
Why
A CarPlay audio experience must remain usable while the phone is locked, recover from connection and audio interruptions, and avoid leaving the driver with stale or blocked controls. Individual feature tests do not replace end-to-end validation of the assembled experience.
How
Done when