Commit graph

  • 19483c026b chore(mobile): point Source-code link to self-hosted Forgejo (git.goon-foss.org) main jtrzupek 2026-06-26 16:36:14 +02:00
  • 05a35955ad fix(api): cap list_scenes filter sizes to prevent DB OOM (Fixes GOON-1M) jtrzupek 2026-06-26 16:25:29 +02:00
  • 813bf741b9 fix(mobile): re-resolve IP-bound tubes on playback error (sxyprn/eporner/fpoxxx) jtrzupek 2026-06-25 11:11:21 +02:00
  • 585e5d59f5 chore(ingest): hard-remove hqfap + 4k69 (entire CDN library gone) jtrzupek 2026-06-25 11:07:47 +02:00
  • 9a789a8551 fix(extract): perverzija xtremestream → hoster/WebView (was bogus mp4, hung player) jtrzupek 2026-06-25 10:57:33 +02:00
  • 1ca503b7be feat(ingest): add xnxx browse scraper (JSON-LD only, alongside search) jtrzupek 2026-06-24 15:52:32 +02:00
  • 2051fc1ded feat(ingest): add youporn browse scraper (JSON-LD only, alongside search) jtrzupek 2026-06-24 15:47:58 +02:00
  • 55612e262b feat(ingest): add browse scrapers for porntrex + mypornerleak (alongside search) jtrzupek 2026-06-24 15:41:22 +02:00
  • a10c51aebf feat(ingest): revive porndish — search→WP REST API browse jtrzupek 2026-06-24 15:09:27 +02:00
  • b3ecf7141a feat(ingest): revive perverzija — search→WP REST API browse jtrzupek 2026-06-22 13:10:16 +02:00
  • cbb2390a2a feat(sources): remove 0dayxx + pornditt + pornhat entirely jtrzupek 2026-06-22 12:23:29 +02:00
  • 2f3e57c0ac feat(ingest): revive fpoxxx — search→browse (KVS /new-N/) jtrzupek 2026-06-22 12:04:05 +02:00
  • 90e391e255 feat(sources): remove pornhub + redtube entirely jtrzupek 2026-06-22 11:55:08 +02:00
  • 1875604c6d fix(mobile): onboarding pager — measure page width so last slide shows "Start browsing" jtrzupek 2026-06-22 10:21:19 +02:00
  • db23b63e46 feat(mobile): first-launch tutorial (pages, features, long-presses, player gestures) jtrzupek 2026-06-22 10:08:56 +02:00
  • c154deab37 feat(sources): 0-5★ ranking on Sites (freshness/metadata/plays) + playback telemetry jtrzupek 2026-06-22 10:00:59 +02:00
  • f34a75f4c6 feat(ingest): disable hqfap/4k69 (broken playback), latestpornvideo → browse jtrzupek 2026-06-22 09:34:47 +02:00
  • 4afebacad8 feat(mobile): movies — performer filter + 3-column grid jtrzupek 2026-06-21 23:21:22 +02:00
  • 960bc75be4 fix(hqfap): reject 3MB video_down.mp4 stub (placeholder, not real video) jtrzupek 2026-06-21 23:01:19 +02:00
  • 249ad49430 fix(mobile): double-tap seek no longer pops the center pause control jtrzupek 2026-06-21 22:27:08 +02:00
  • b643b2cb77 fix(movies): dedup playback sources by target (cross-mirror dupes) jtrzupek 2026-06-21 22:26:50 +02:00
  • 78d26c4bc6 feat(mobile): strip .com/.org clutter from site names jtrzupek 2026-06-20 16:38:45 +02:00
  • ac84da92a4 feat(siska): convert to browse scraper, re-enable (search broken site-side) jtrzupek 2026-06-20 16:25:11 +02:00
  • 0b6f663528 investigate(siska): keep disabled — site search is broken (ignores query) jtrzupek 2026-06-20 16:15:02 +02:00
  • 8b216018a2 feat(mobile): Hidden content screen — blacklist tags/performers/studios jtrzupek 2026-06-20 15:53:09 +02:00
  • b0e15935c6 fix(mobile): stop full scene-list refetch on back-navigation (perf) jtrzupek 2026-06-20 14:14:07 +02:00
  • c524b43fa3 fix(mobile): drop background ANR noise from Sentry (beforeSend) jtrzupek 2026-06-19 20:07:32 +02:00
  • f014a901de feat(scheduler): periodic title+duration dedup (missing-merge tube dupes) jtrzupek 2026-06-19 11:20:48 +02:00
  • 476cbb8d16 fix(ingest): race-safe scene_tags insert (ON CONFLICT) — GOON-M jtrzupek 2026-06-19 11:09:06 +02:00
  • 567a8fb3b5 fix(mobile): scene-list scroll perf + native phone-side fpoxxx resolver jtrzupek 2026-06-19 11:02:21 +02:00
  • e4cb94bc59 feat(scheduler): hetzner bandwidth monitor + search-tube watchdog coverage jtrzupek 2026-06-18 09:18:59 +02:00
  • b1a530611f fix(latestpornvideo): revive search via /actor/ listing + metadata jtrzupek 2026-06-16 23:20:02 +02:00
  • e77deef667 fix(mypornerleak): revive search via /actor/ listing + metadata jtrzupek 2026-06-16 23:16:02 +02:00
  • 5b67aeeeaf fix(sxyland): revive search via /actor/ pages + rich metadata jtrzupek 2026-06-16 23:11:44 +02:00
  • e0e69189a8 fix(sxyprn): revive search via performer pages + rich metadata jtrzupek 2026-06-16 22:58:52 +02:00
  • 00f4779abe feat(mobile): column toggle, duration filter, saved searches, screen protection (mobilism feedback) jtrzupek 2026-06-16 13:52:27 +02:00
  • bcee5851e9 feat(api): per-device saved searches (keyword favorites) jtrzupek 2026-06-16 13:52:18 +02:00
  • 0424cb9138 feat(scheduler): per-origin ingest freshness watchdog -> Sentry jtrzupek 2026-06-15 10:26:25 +02:00
  • 4b71689a95 fix(scrapers): freshporno browse from /latest-updates/ not homepage root jtrzupek 2026-06-15 09:59:40 +02:00
  • 3714afa22f fix(mobile): capture site/origin text params in bug-report auto-context jtrzupek 2026-06-15 09:35:49 +02:00
  • 8b4783771f feat(scheduler): periodic thumb-asset dedup (hdporn.gg/fullmovies.xxx) jtrzupek 2026-06-14 14:56:45 +02:00
  • b5d9473898 feat(scripts): merge tube dupes by thumbnail asset-id (hdporn.gg/fullmovies.xxx family) jtrzupek 2026-06-14 14:18:44 +02:00
  • b66dd99eba fix(mobile): show Refresh thumbnail when the hero image actually fails to load jtrzupek 2026-06-14 14:18:44 +02:00
  • 81d617efc2 fix(extractors): 4k69 direct okcdn extraction (replaces WebView fallback) jtrzupek 2026-06-14 11:39:36 +02:00
  • 2a9445fe4a feat(mobile): auto-accept age-gate modal in WebView fallback jtrzupek 2026-06-14 11:31:12 +02:00
  • 08410fddd1 fix(mobile): show Refresh thumbnail only when preview missing or broken jtrzupek 2026-06-14 11:17:18 +02:00
  • 29da1fbaa6 fix(extractors): route 4k69 to WebView fallback after player migration jtrzupek 2026-06-14 11:17:18 +02:00
  • 9269b02a4c feat(mobile): source-code link in Settings + Refresh thumbnail button jtrzupek 2026-06-13 19:04:11 +02:00
  • e512665d26 feat(scenes): force-refresh thumbnail via enrich-thumbnail ?force jtrzupek 2026-06-13 19:04:10 +02:00
  • 32919d6a6c feat(extractors): detect deleted porntrex videos and mark dead jtrzupek 2026-06-13 19:04:10 +02:00
  • 9d4384cef3 fix(ingest): cap code/director to column length (GOON-J) jtrzupek 2026-06-13 19:04:10 +02:00
  • 86b3e88f08 fix(mobile): remount Favorites lists on numColumns change (GOON-11) jtrzupek 2026-06-12 16:19:19 +02:00
  • e618087eae feat(mobile): "What's new" popup after OTA updates jtrzupek 2026-06-12 11:41:54 +02:00
  • a00acdddfb feat(mobile): "Your messages" inbox on bug FAB + geo-block playback hint jtrzupek 2026-06-12 11:35:44 +02:00
  • d1f2f035b0 feat(bug-reports): two-way replies (device-scoped) + admin reply endpoint jtrzupek 2026-06-12 11:35:44 +02:00
  • aebacc0389 feat(mobile): Favorites "Scenes" tab to view saved scenes jtrzupek 2026-06-12 10:06:12 +02:00
  • 1654d78d59 fix(ingest): strip NUL bytes from raw payloads before Postgres write jtrzupek 2026-06-11 19:48:22 +02:00
  • 16eb633bde feat(mobile): phone-side resolvers for IP-bound tubes (sxyprn, eporner, voe) jtrzupek 2026-06-11 16:14:25 +02:00
  • aa05ce2647 feat(playback): direct-HLS manifest passthrough + proxy stream drop handling jtrzupek 2026-06-11 16:14:25 +02:00
  • 072f2608b3 chore: gitignore marketing-shots/ and one-off _*.py scripts jtrzupek 2026-06-10 19:28:22 +02:00
  • a9f0f94321 feat(sxyprn): mark dead posts during thumbnail refresh sweep jtrzupek 2026-06-10 19:20:28 +02:00
  • 956a0feb22 docs: correct Bright Data proxy type (ISP, flat-rate not per-GB) jtrzupek 2026-06-10 19:18:40 +02:00
  • 21bc8bf1fe feat(superporn): browse scraper via Bright Data residential proxy jtrzupek 2026-06-10 18:47:45 +02:00
  • 80fd83cb4e feat(tubes): add 4k69 + neporn browse scrapers, shared PlayTube base jtrzupek 2026-06-10 18:15:13 +02:00
  • 6de986b9a7 feat(hqfap): browse scraper + native mp4 extractor (~120k scenes) jtrzupek 2026-06-10 17:51:04 +02:00
  • 08079787da feat(sxyprn): on-demand thumbnail resolver (live posters, ~1h-TTL workaround) jtrzupek 2026-06-10 15:02:49 +02:00
  • f7670963df fix(sxyprn): disable thumbnail refresh job — trafficdeposit token has ~1h TTL jtrzupek 2026-06-10 14:29:24 +02:00
  • fef28ae56b feat(sxyprn): refresh rotting thumbnails from live post pages + scheduled job jtrzupek 2026-06-10 10:36:30 +02:00
  • bb9e1afc31 fix(resolver): refresh thumbnails on re-scrape instead of fill-only-if-null jtrzupek 2026-06-10 10:28:18 +02:00
  • 32c18a6d0f fix(mobile): English long-press action labels + clean thumb error placeholder jtrzupek 2026-06-10 10:11:10 +02:00
  • adbdce1c75 fix(api): de-prioritize rotting sxyprn/trafficdeposit thumbnails jtrzupek 2026-06-10 10:11:10 +02:00
  • 200db33d78 feat(mobile): send X-Device-Id, one-time adopt-legacy jtrzupek 2026-06-10 08:58:02 +02:00
  • c8baa11604 feat(api): device-scope user state (favorites/progress/blacklists) jtrzupek 2026-06-10 08:58:01 +02:00
  • 953068f0db docs(claude): add resolve/playback findings + local debugging guide jtrzupek 2026-06-09 21:51:29 +02:00
  • 904f8984c8 feat(mobile): tile long-press actions (hide / mark-duplicate), drop dead preview jtrzupek 2026-06-09 09:52:15 +02:00
  • e1c7efb947 chore(api): drop unused has_animated_thumbnail scene filter jtrzupek 2026-06-09 09:52:15 +02:00
  • e98ef6577e feat(api): scene hide + merge-duplicate endpoints for long-press actions jtrzupek 2026-06-09 09:47:16 +02:00
  • abddd27856 fix(proxy): stable image-proxy URLs so expo-image actually caches thumbnails jtrzupek 2026-06-09 09:45:22 +02:00
  • 3e8a221981 feat(extractors): native HLS for xhamster; hqporner flyflv player jtrzupek 2026-06-09 09:35:58 +02:00
  • 7f36865b5a fix(performer): tag chips → in-place horizontal filter selector jtrzupek 2026-06-09 09:25:02 +02:00
  • 576a424615 fix(scripts): force UTF-8 stdout in publish_update — stop false exit-1 jtrzupek 2026-06-08 11:58:43 +02:00
  • ffb80c7b60 feat(performer): replace dev Re-scrape button with top-tag chips jtrzupek 2026-06-08 11:56:26 +02:00
  • f8b1e801ef fix(api): collapse same-origin playback sources on scene detail jtrzupek 2026-06-08 11:50:45 +02:00
  • 65b9df073a fix(extractors): route sxylandcom through _embed_iframe, not webview fallback jtrzupek 2026-06-08 11:41:38 +02:00
  • a9545a7ab2 feat(scripts): merge_exact_title_duration --playback-only + progress logging jtrzupek 2026-06-08 11:02:19 +02:00
  • e23e2d1f17 fix(merge): move playback_sources on scene merge + exact-title+duration dedup jtrzupek 2026-06-08 10:56:50 +02:00
  • 8f34a3e2f1 fix(mobile): movie part picker as scrollable modal — Android showed only 3 of N jtrzupek 2026-06-08 10:25:03 +02:00
  • 940d4872e3 fix(mobile): removeClippedSubviews=false on grids — stop thumbnails vanishing on scroll jtrzupek 2026-06-08 10:18:48 +02:00
  • d4b89f16e3 fix(scripts): backfill arg parser consumed --workers value as LIMIT jtrzupek 2026-06-08 10:15:09 +02:00
  • 7bf1fd6716 fix(xvideos): parse model name from nested span.name — recover 0-performer scenes jtrzupek 2026-06-08 10:13:21 +02:00
  • edbffc0fa7 fix(mobile): boot diagnostic as breadcrumb, not event — silence GOON-Q noise jtrzupek 2026-06-08 10:04:21 +02:00
  • 2b602beea5 fix(dedup): tighten cross-source candidate prefilter — kill 1800s hang (GOON-V) jtrzupek 2026-06-08 10:03:33 +02:00
  • cd257740be fix(hqporner): require ALL query tokens in slug — stop performer over-attribution jtrzupek 2026-06-08 09:28:18 +02:00
  • bc72515227 fix(player): drop "Tap for sound" pill — speaker toggle is enough jtrzupek 2026-06-08 09:20:42 +02:00
  • c5abdc1186 migration(0021): raise scene_tags.tag_id statistics target to 1000 jtrzupek 2026-06-07 21:12:22 +02:00
  • 43f7e1f7b2 perf(scenes): literal tag_id in filter — 4-12s tag lists -> ~20ms jtrzupek 2026-06-07 21:10:31 +02:00
  • d52641774d perf(scenes): light list payload — drop tags/refs, slim playback to thumbnail jtrzupek 2026-06-07 21:03:26 +02:00
  • 9f46e8dea9 feat(scripts): dedup_n2_canonical — resolve n=2 false-merges via canonical duration jtrzupek 2026-06-07 20:25:10 +02:00
  • 4922646011 feat(dedup): merge exact-phash + same-duration + shared-performer duplicates jtrzupek 2026-06-07 20:08:06 +02:00
  • d5409d01ce feat(scripts): audit_teaser_only — hide scenes whose only source is a teaser jtrzupek 2026-06-07 19:52:44 +02:00