2026-05-16 media-toolbox: архитектурные принципы NFO/classification

This commit is contained in:
Alexey Martemyanov
2026-05-15 14:57:19 +06:00
parent 653d2bf056
commit adc343805c
+9 -1
View File
@@ -110,7 +110,15 @@ media-pipeline (~/Developer/media_files_db, ветка kraken-agent)
---
## Принятые решения (архитектурные)
### Архитектурные принципы (важно)
| Принцип | Описание |
|---------|----------|
| **NFO как evidence** | LocalEvidenceStrategy читает NFO только если они пришли с контентом (торрент). Pipeline-generated NFO не должны читаться как входные данные — это circular dependency. Сейчас защита через `.media-pipeline-canonical` маркер (FileScanner пропускает canonical dirs). Долгосрочно: добавить `<generator>media-pipeline</generator>` тег в generated NFO и фильтровать в LocalEvidenceStrategy. |
| **Классификация по жанрам провайдера** | Роутинг в cartoons/documentaries — только по жанрам из API (TMDb/KP), через `MediaSearchCandidate.genres → NFOMetadataFact`. Не по source path, не по локальным NFO. |
| **resolve-manual — не решение** | `unresolved.json` — очередь для автоматического резолва. resolve-manual только для экстренных случаев. |
| Решение | Описание |
|---------|----------|