spawnYtdlp now always resolves so the hasAudio() cascade continues when a single YTM result is geo-blocked or unavailable. Error is still logged. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
spawnYtdlp now always resolves so the hasAudio() cascade continues when a single YTM result is geo-blocked or unavailable. Error is still logged. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>