diff --git a/mobile/src/changelog.ts b/mobile/src/changelog.ts index 9a92ef2..daa6bd0 100644 --- a/mobile/src/changelog.ts +++ b/mobile/src/changelog.ts @@ -16,6 +16,13 @@ export type ChangelogEntry = { }; export const CHANGELOG: ChangelogEntry[] = [ + { + id: '2026-08-22', + date: 'August 2026', + items: [ + 'Videos on DoodStream-style hosts no longer stop at a "resolver fail" screen. Those hosts switched to a captcha you have to tap, so the app now takes you straight to the page where you can tap it instead of asking you to press one more button first.', + ], + }, { id: '2026-08-20c', date: 'August 2026', diff --git a/mobile/src/screens/PlayerScreen.tsx b/mobile/src/screens/PlayerScreen.tsx index 39d9e34..afc12e1 100644 --- a/mobile/src/screens/PlayerScreen.tsx +++ b/mobile/src/screens/PlayerScreen.tsx @@ -1711,8 +1711,17 @@ function EmbedWebViewPlayer({ params }: { params: RouteParams }) { mode: 'video', }); } else { - setResolveStatus('failed'); + // Cichy resolver padl. Zamiast slepego zaulka z przyciskiem wchodzimy OD RAZU do + // WebView, bo to jedyne miejsce, gdzie user moze przejsc wyzwanie. Powod zmiany: + // playmogo i klony DoodStreama przeszly z NIEWIDZIALNEGO Turnstile na RENDEROWANY + // (`turnstile.render`, zero znacznikow trybu invisible; sprawdzone 2026-08-22 przez + // residential IP, gdzie strona ma 59 kB i pass_md5, wiec sam protokol zyje). Zadne + // ciche pobranie tego nie przejdzie, wiec ekran bledu byl juz tylko dodatkowym + // klikiem na drodze do dzialajacego odtwarzania (zgloszenia 57d6265a i 3d3e1b33: + // "wszedzie doodstream resolver fail"). + setResolveStatus('idle'); setResolveError(result.error || 'unknown'); + setSkipResolve(true); } })(); }, [url, refererHost, sceneId, durationSec, resolveAttempted, skipResolve, nav]);