goon/app
goon-foss 6e056b81c2 feat(watchdog): pokrycie filmow, eskalacja poziomu i dobowy digest na Slacka
Watchdog dzialal poprawnie - vjav i superporn wypisywal co 6h przez caly czas ich
ciszy. Zawiodlo POWIADOMIENIE, w trzech miejscach naraz.

1. Filmy nie byly pokryte w ogole. Watchdog skanowal tylko origins tube:<sitetag> ze
scen, wiec streamporn.vip stal 23 dni i zaden automat nie mial jak tego zauwazyc.
Doszlo 6 konektorow filmowych (35 -> 41 sprawdzanych zrodel), prog 72h. Zweryfikowane
przez celowe obnizenie progu do 1h: wszystkie 6 matchuje realne liczby pozycji, a nie
zwraca cicho zera - bo to dokladnie ta klasa bledu, ktora naprawiamy.

2. Stabilny fingerprint per origin tworzyl JEDNO issue przy pierwszym wystapieniu i
potem tylko licznik. Sentry powiadamia o nowych i regresjach, nie o kolejnych
wystapieniach otwartego issue. Teraz fingerprint zawiera kubelek wieku (2d+/7d+/30d+),
wiec przekroczenie kazdego progu zaklada nowe issue, ale w obrebie kubelka nadal nie
ma spamu co 6h.

3. Poziom byl zawsze warning, a reguly alertow celuja w error. Od 7 dni ciszy idzie
error. Sprawdzone: vjav i superporn eskaluja teraz do error, pornbusy/youperv/porndish
zostaja na warning.

Plus kanal, ktory czlowiek realnie czyta: dobowy digest na Slacka (osobny job, zeby
nie wysylac tej samej listy 4x dziennie). Domyslnie NO-OP - bez GOON_SLACK_BOT_TOKEN
i GOON_SLACK_CHANNEL nic nie probuje wysylac, kanalu nie zgadujemy.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 15:03:27 +02:00
..
api fix(thumbs): odsiej zrodla oddajace atrapy zamiast miniatur (znikaly po merge) 2026-08-02 16:30:21 +02:00
connectors fix(vjav): 429 parsowany jako XML, zrodlo stalo 12 dni bez zadnego bledu 2026-08-03 14:36:25 +02:00
enrich fix(movie-enrich): studio/performer disambiguation for generic TPDB titles 2026-07-05 11:31:38 +02:00
extractors chore(hqfap): zdjete zrodlo - Cloudflare JS-challenge nie do przejscia 2026-08-02 18:01:19 +02:00
models feat(dedup): provenance przypisan performerow do scen (scene_performers.source_id) 2026-07-27 15:04:10 +02:00
normalize feat(ingest): SQL phash match, tag inference + backfill, clip-store skip, browse tubes, watchdog 2026-06-01 15:07:35 +02:00
notify feat(watchdog): pokrycie filmow, eskalacja poziomu i dobowy digest na Slacka 2026-08-03 15:03:27 +02:00
resolve feat(tags): scal duplikaty liczby mnogiej + prewencja + skrocone liczniki 2026-08-03 09:19:50 +02:00
scheduler feat(watchdog): pokrycie filmow, eskalacja poziomu i dobowy digest na Slacka 2026-08-03 15:03:27 +02:00
templates feat(seo): public HTML SEO router + templates; add CLAUDE.md; ignore .nimbalyst 2026-05-31 16:29:59 +02:00
__init__.py Initial commit 2026-05-20 10:10:22 +02:00
auth.py Initial commit 2026-05-20 10:10:22 +02:00
config.py feat(watchdog): pokrycie filmow, eskalacja poziomu i dobowy digest na Slacka 2026-08-03 15:03:27 +02:00
db.py Initial commit 2026-05-20 10:10:22 +02:00
ingest.py fix(favorites): exclude bulk-backfill scenes from "+N new" (tube fake dates) 2026-07-01 16:04:01 +02:00
main.py feat(sources): 0-5★ ranking on Sites (freshness/metadata/plays) + playback telemetry 2026-06-22 10:00:59 +02:00