User feedback: 'dodaj da če čekira in shranjuje že obdelani komadi v SQL bazo,
da če nalagamo komad ki smo ga že naložili da ga ne naloži'
NEW: SQLite dedup database at /data/processed.db
Schema: processed_videos
- normalized_name (PK part 1)
- tv_station (PK part 2) — isti komad lahko obstaja na različnih postajah
- filename_orig
- job_id
- nextcloud_url
- file_size_mb
- uploaded_at
Filename normalization removes noise:
'BRAJDE (Official Video).mp4' → 'brajde'
'Brajde (HD).mxf' → 'brajde'
'BRAJDE - LIVE 2024.mp4' → 'brajde'
(strips parentheses, suffixes like Official/HD/4K/Live, extension, lowercase)
NEW endpoints:
- POST /api/dedup/check — preveri katera imena so že obdelana
- POST /api/dedup/remove — pobriše dedup zapis (Re-process)
- GET /api/dedup/list — seznam vseh obdelanih (opt. filter po tv_station)
Integration:
- Nextcloud upload (manual + auto): zabeleži v dedup po uspešnem PUT
- File queue (frontend): pred dodajanjem preveri dedup
→ prikaže rdeč warning '⚠ Že naložen na ONE DE (29.4.2026) — Re-process'
→ opacity 0.6 (vizualno blediji)
→ submit jih SKIP-a (osim če 'Re-process' kliknil)