docs: mimari ve operasyon dokümantasyonlarını ekle
- `ARCHITECTURE_AND_FLOW.md`: Mimari, servis sorumlulukları, kuyruklar ve iş akışı. - `HANDOVER_2026-02-16.md`: Tamamlanan kapsam, düzeltmeler ve sonraki adımlar. - `OPERATIONS_RUNBOOK.md`: Dev/prod çalıştırma, test ve sık karşılaşılan sorunlar. - `TURKCEALTYAZI_REAL_STATUS.md`: Gerçek provider entegrasyon durumu ve yapılacaklar. - `README.md`: Dokümantasyon dizini için giriş ve indeks.
This commit is contained in:
83
doc/ARCHITECTURE_AND_FLOW.md
Normal file
83
doc/ARCHITECTURE_AND_FLOW.md
Normal file
@@ -0,0 +1,83 @@
|
||||
# Mimari ve Is Akisi
|
||||
|
||||
## Servisler
|
||||
|
||||
## `services/core`
|
||||
|
||||
Sorumluluklar:
|
||||
- Dizin izleme (`/media/tv`, `/media/movie`)
|
||||
- Stabil dosya kontrolu
|
||||
- Dosya adi parse
|
||||
- ffprobe media analizi
|
||||
- BullMQ pipeline orchestration
|
||||
- Job/log API + SSE stream
|
||||
- Review endpointleri
|
||||
|
||||
Queue'lar:
|
||||
- `fileEvents`
|
||||
- `mediaAnalysis`
|
||||
- `subtitleFetch`
|
||||
- `finalizeWrite`
|
||||
|
||||
Durumlar (ozet):
|
||||
- `PENDING`
|
||||
- `WAITING_FILE_STABLE`
|
||||
- `PARSED`
|
||||
- `ANALYZED`
|
||||
- `REQUESTING_API`
|
||||
- `FOUND_TEMP`
|
||||
- `NORMALIZING_ENCODING`
|
||||
- `WRITING_SUBTITLE`
|
||||
- `DONE`
|
||||
- `NEEDS_REVIEW`
|
||||
- `NOT_FOUND`
|
||||
- `AMBIGUOUS`
|
||||
- `ERROR`
|
||||
|
||||
## `services/api`
|
||||
|
||||
Sorumluluklar:
|
||||
- `/v1/subtitles/search`
|
||||
- `/v1/subtitles/choose`
|
||||
- archive extraction + guvenlik
|
||||
- icerik tabanli SRT/ASS dogrulama
|
||||
- scoring + best/ambiguous/not_found karari
|
||||
- temp cleanup
|
||||
|
||||
Providerlar:
|
||||
- `TurkceAltyaziProvider`
|
||||
- `OpenSubtitlesProvider`
|
||||
|
||||
Not:
|
||||
- OpenSubtitles su an mock.
|
||||
- TurkceAltyazi mock + feature-flag ile real deneme moduna sahip.
|
||||
|
||||
## `services/ui`
|
||||
|
||||
Sayfalar:
|
||||
- Dashboard
|
||||
- Jobs
|
||||
- Job Detail (SSE canli log)
|
||||
- Review
|
||||
- Settings
|
||||
- Watched Paths
|
||||
|
||||
## Veri modeli (Mongo)
|
||||
|
||||
- `watched_paths`
|
||||
- `settings`
|
||||
- `media_files`
|
||||
- `jobs`
|
||||
- `job_logs`
|
||||
|
||||
## Uctan uca akis (movie ornegi)
|
||||
|
||||
1. Watcher `add/change` event yakalar.
|
||||
2. `fileEvents` job olusur.
|
||||
3. Stabil kontrol -> parse -> media kaydi.
|
||||
4. `mediaAnalysis` ffprobe calistirir.
|
||||
5. `subtitleFetch` API `search` cagirir.
|
||||
6. API provider adaylarini indirir/isler.
|
||||
7. best secilirse core `finalizeWrite` ile dosyayi yazar.
|
||||
8. Job `DONE` olur, loglar UI'da canli akar.
|
||||
|
||||
Reference in New Issue
Block a user