Files
subwatcher/doc/HANDOVER_2026-02-16.md
szbk d38fc3b390 feat(api): turkcealtyazi gerçek modunu stabil hale getir ve mock altyapısını kaldır
Mock fallback mantığını ve determinantik mock üretim kodlarını kaldırarak
TurkceAltyazi sağlayıcısını tamamen gerçek moda geçirdi. İyileştirilmiş
arama, indirme ve çerez yönetimi ile sağlam bir entegrasyon sağlandı.

- MockArtifact ve deterministic modüllerini kaldır
- TurkceAltyaziProvider'da mock fallback mantığını tamamen kaldır
- HTTP çerez yönetimi, retry mantığı ve hata işleme iyileştirmeleri
- ENABLE_TA_STEP_LOGS yapılandırması ile adım adım loglama
- TURKCEALTYAZI_ALLOW_MOCK_FALLBACK ortam değişkenini kaldır
- Dokümantasyonu gerçek mod reflektif olarak güncelle
- OpenSubtitles sağlayıcını gerçek entegrasyon tamamlanana kadar pasif yap
- Varsayılan kaynak etiketini 'mock' yerine 'unknown' olarak güncelle
2026-02-16 10:50:59 +03:00

88 lines
2.9 KiB
Markdown

# Handover Notu (16 Subat 2026)
Bu belge, 16 Subat 2026 tarihine kadar subwatcher projesinde tamamlanan calismalari ozetler.
## 1) Tamamlanan kapsam
- Monorepo iskeleti olusturuldu:
- `services/core` (Fastify + watcher + BullMQ + Mongo)
- `services/api` (Fastify + provider katmani + extraction/security/selection)
- `services/ui` (React + Vite)
- Docker yapisi kuruldu:
- `compose.dev.yml` (hot reload)
- `compose.yml` (prod)
- Her servis icin Dockerfile
- Temel altyazi pipeline aktif:
- Dosya izleme
- Stabil dosya kontrolu
- Parse
- ffprobe (hata halinde fallback mediaInfo)
- Subtitle arama
- Encoding normalize + hedefe yazma
- Mongo koleksiyonlari ve job log mekanizmasi aktif.
- UI sayfalari aktif:
- Dashboard
- Jobs
- Job Detail (SSE log akisi)
- Review listesi + manuel secim akisi
- Settings
- Watched Paths
- API tarafinda provider altyapisi aktif.
- Archive extraction/security aktif:
- 7z extraction
- zip slip kontrolu
- limit kontrolleri
- icerik tabanli SRT/ASS validasyonu
## 2) Sonradan yapilan kritik duzeltmeler
- `p7zip-rar` Docker build hatasi duzeltildi:
- `services/api/Dockerfile` -> `p7zip-full unrar-free`
- Dev ortamda bagimlilik drift sorunu duzeltildi:
- `compose.dev.yml` icin `api/core/ui` servislerine:
- `command: sh -c "npm install && npm run dev"`
- Parse gorunurlugu iyilestirildi:
- `PARSE_DONE` log meta icine `release/year/season/episode`
- UI Job Detail ekraninda release/year/season-episode gosterimi
## 3) Gercek TurkceAltyazi entegrasyonu (v2) icin yapilanlar
- Feature flag eklendi (API env):
- `ENABLE_TURKCEALTYAZI_REAL`
- `TURKCEALTYAZI_BASE_URL`
- `TURKCEALTYAZI_TIMEOUT_MS`
- `TURKCEALTYAZI_MIN_DELAY_MS`
- Yeni real adapter helper eklendi:
- `services/api/src/lib/turkcealtyaziReal.ts`
- `TurkceAltyaziProvider` guncellendi:
- real search denemesi
- detail->download URL resolve
- dosya indirme (archive/direct ayrimi)
- Provider trace adimlari eklendi:
- `TA_SEARCH_REQUEST`
- `TA_SEARCH_PARSED`
- `TA_DETAIL_FETCHED`
- `TA_DOWNLOAD_URL_RESOLVED`
- `services/api/package.json` eklendi:
- `axios`
- `cheerio`
## 4) Mevcut calisan durum
- API ve Core servisleri basariyla ayaga kalkiyor.
- Yeni bagimliliklar kurulduktan sonra `ERR_MODULE_NOT_FOUND: axios` problemi cozuldu.
- Pipeline genel olarak calisiyor; yeni eklenen film dosyalarinda job ilerlemesi izlenebiliyor.
## 5) Bilinen riskler
- TurkceAltyazi HTML parser heuristik, site DOM degisirse kirilabilir.
- Gercek TA akisi icin cookie/challenge korumalari ihtiyac halinde ek hardening gerektirebilir.
- Watcher coklu event uretebildigi icin tek dosya icin birden fazla job olusabiliyor (de-dup katmani guclendirilmeli).
## 6) Sonraki oncelikli isler (onerilen)
1. Watcher dedup mekanizmasi ekle (path + zaman penceresi + aktif job kontrolu).
2. TurkceAltyazi parserini fixture testlerle sabitle.
3. TA hata tiplerini ayir (network/parsing/rate-limit/blocked).
4. Core tarafinda retry/policy netlestir.