Problem
A newly connected Bluetooth card can appear before its A2DP profiles have been enumerated. The current activation path treats the first missing-profile result as a failure, restarts WirePlumber immediately, and then performs a single recheck that can race pipewire-pulse rebuilding the card.
Expected behavior
Give initial profile enumeration a short grace period. Keep WirePlumber restart as a last resort and use bounded retries while the card and profiles reappear afterward.
Acceptance criteria
- A temporarily incomplete card can become ready without a WirePlumber restart.
- Post-restart checks tolerate delayed card and profile enumeration.
- Retries are bounded and do not sleep again after the final failed attempt.
- A persistent failure is logged and returned without attempting profile activation.
Problem
A newly connected Bluetooth card can appear before its A2DP profiles have been enumerated. The current activation path treats the first missing-profile result as a failure, restarts WirePlumber immediately, and then performs a single recheck that can race pipewire-pulse rebuilding the card.
Expected behavior
Give initial profile enumeration a short grace period. Keep WirePlumber restart as a last resort and use bounded retries while the card and profiles reappear afterward.
Acceptance criteria