From adc343805caac94d3b8b2b366ea49ce3226af92e Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Fri, 15 May 2026 14:57:19 +0600 Subject: [PATCH] =?UTF-8?q?2026-05-16=20media-toolbox:=20=D0=B0=D1=80?= =?UTF-8?q?=D1=85=D0=B8=D1=82=D0=B5=D0=BA=D1=82=D1=83=D1=80=D0=BD=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=BF=D1=80=D0=B8=D0=BD=D1=86=D0=B8=D0=BF=D1=8B=20NFO?= =?UTF-8?q?/classification?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- family/projects/media-toolbox-kraken.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/family/projects/media-toolbox-kraken.md b/family/projects/media-toolbox-kraken.md index 84ad3f51..4c03ac90 100644 --- a/family/projects/media-toolbox-kraken.md +++ b/family/projects/media-toolbox-kraken.md @@ -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). Долгосрочно: добавить `media-pipeline` тег в generated NFO и фильтровать в LocalEvidenceStrategy. | +| **Классификация по жанрам провайдера** | Роутинг в cartoons/documentaries — только по жанрам из API (TMDb/KP), через `MediaSearchCandidate.genres → NFOMetadataFact`. Не по source path, не по локальным NFO. | +| **resolve-manual — не решение** | `unresolved.json` — очередь для автоматического резолва. resolve-manual только для экстренных случаев. | + + | Решение | Описание | |---------|----------|