goon/mobile/src
goon-foss 92adaccf1b
Some checks are pending
Backend tests / test (push) Waiting to run
fix(hqfap): resolve on the device (site blocks the server IP)
hqfap.com's Cloudflare blocks the VPS (Hetzner) IP — the server times out fetching
the page (0 bytes), so backend resolve returns None (503) or a stale/IP-bound URL that
fails on the phone (35 player_errors / 3 days, the top error source). But the page loads
fine from residential IPs (200, 0.7s) and its okcdn/vstor/cdnde mp4 is portable cross-IP
(srcIp not enforced, verified 206 from residential).

Fix: phone-side resolve, same pattern as sxyprn/eporner/fpoxxx. New hqfapResolver.ts
(fetch page on device -> JSON-LD contentUrl -> direct mp4, mirror of hqfap.py) wired into
the proactive phone-resolve chain in SceneDetail and the on-error re-resolve in
PlayerScreen; hqfapcom added to PHONE_RESOLVE_ORIGINS. Backend hqfap.extract stays as a
last-resort fallback.

Note: sxyprn/eporner were checked and are NOT broken (95-96% play success; their "gone"
events are real deletions), so no change there.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-14 22:20:43 +03:00
..
components refactor(review): dedup favorites/list visibility + SQL-aggregate count, share mobile isNew 2026-07-02 09:41:37 +02:00
lib fix(hqfap): resolve on the device (site blocks the server IP) 2026-07-14 22:20:43 +03:00
native Initial commit 2026-05-20 10:10:22 +02:00
screens fix(hqfap): resolve on the device (site blocks the server IP) 2026-07-14 22:20:43 +03:00
api.ts feat(jav): separate JAV section (tab + feed gating) + enable javflix ingest 2026-07-10 11:16:31 +02:00
changelog.ts fix(hqfap): resolve on the device (site blocks the server IP) 2026-07-14 22:20:43 +03:00
ClientContext.tsx Initial commit 2026-05-20 10:10:22 +02:00
ErrorBoundary.tsx Initial commit 2026-05-20 10:10:22 +02:00
navigation.tsx feat(jav): separate JAV section (tab + feed gating) + enable javflix ingest 2026-07-10 11:16:31 +02:00
PreferencesContext.tsx feat(mobile): default playback quality — skip the quality chooser 2026-07-01 10:37:20 +02:00
SceneActionsContext.tsx fix(mobile): English long-press action labels + clean thumb error placeholder 2026-06-10 10:11:10 +02:00
storage.ts feat(mobile): default playback quality — skip the quality chooser 2026-07-01 10:37:20 +02:00
theme.ts build(apk): 0.2.0 — expo-font native, runtime 1.1, fonts re-enabled 2026-05-31 12:51:32 +02:00
types.ts feat(jav): separate JAV section (tab + feed gating) + enable javflix ingest 2026-07-10 11:16:31 +02:00