SYNOMAP – IMPLEMENTATION MAP v1 =============================== Objet ----- Ce document fait le lien entre : - la spécification Synomap v1 (A1..A4, B1..B4, META), - les scripts Shell existants dans le projet seed_mover. Il permet de savoir : - quels scripts couvrent quels blocs de la spec, - quelles parties du modèle ne sont pas encore implémentées, - où concentrer les refactors. Racine scripts -------------- scripts/ scripts_meta/ Format ------ Chaque entrée de script suit ce format : [SCRIPT_PATH] Rôle : Blocs couverts : Specs de référence : Notes : MAPPING INITIAL (v1) ==================== [scripts/daily_qbittorrent_update_v1.32c_synomap.sh] Rôle : - Collecte de l'état qBittorrent (torrents, statuts, tags, chemins), - Préparation des données nécessaires au Checker Synomap. Blocs couverts : - A (via remontée des infos qui permettent de déduire ABC), - D (bloc qB : status, save_path, tags), - H (source minimale si l'information remonte), - B1 (entrée pour la boucle d'exécution / diagnostic). Specs de référence : - A1 Checker Spec v1, - A2 Ordre d'évaluation, - B1 Loop Exec v1. Notes : - Script principalement "observateur" : ne doit pas exécuter d'actions correctrices directes (celles-ci appartiennent à B3/B4). [scripts/synomap_apply_from_plan.sh] Rôle : - Appliquer le plan d'actions produit par la logique de correction (B3), - Interagir avec qBittorrent / FS pour exécuter les actions validées. Blocs couverts : - B3 Correction Model (consommation de l'ACTION_PLAN), - B4 Execution Model (exécution concrète). Specs de référence : - B3 Correction v1, - B4 Execution v1. Notes : - Ne doit ni inventer des actions, ni modifier la logique métier : il applique uniquement ce qui est décrit dans le plan. [scripts/synomap_chain_preview_v1.0.sh] Rôle : - Prévisualiser la chaîne d'exécution Synomap (diagnostic / plan / actions), - Aider au debug et à la compréhension de la boucle complète. Blocs couverts : - Principalement B1/B2/B3/B4 en mode "simulation" ou "trace". Specs de référence : - B1..B4. Notes : - Utile pour vérifier que la perception du pipeline côté scripts reste alignée sur la doc. [scripts/synomap_cleanup_omv_only_v1.0.sh] Rôle : - Nettoyage ciblé sur OMV (FS local) suivant certains états Synomap. Blocs couverts : - G (FS/mirroirs), potentiellement B4 (actions sur le FS). Specs de référence : - A1 (bloc G), - B4 Execution v1 (partie FS – à consolider). Notes : - À recadrer sur B4 lors des refactors pour éviter les logiques ad hoc. [scripts/synomap_prune_mapping_write_v1.1.sh] Rôle : - Maintenance / écriture de la table de mapping (mapping_entries.txt ou équivalent). Blocs couverts : - E (bloc Mapping). Specs de référence : - A1/A2 (bloc E), - éventuellement B1/B2 si le script renseigne des états utilisables. Notes : - À articuler clairement avec la spec E pour éviter les divergences mapping théorique / mapping effectif. [scripts/radarr_postprocess_v1.32_fix_append.sh] Rôle : - Post-process Radarr côté Seedbox / Synomap (ajout tags, intégration au flux). Blocs couverts : - H (source), D (tags qB), éventuellement ABC (classification implicite). Specs de référence : - A1 (bloc H, D), - DOC_OV1 / Issues si des statuts sont posés. Notes : - À auditer pour s'assurer que les tags / états posés sont compatibles avec la logique Synomap. [scripts/sonarr_postprocess_v1.32_fix_append.sh] Rôle : - Post-process Sonarr côté Seedbox / Synomap (ajout tags, intégration au flux). Blocs couverts : - H (source), D (tags qB), éventuellement ABC. Specs de référence : - A1 (bloc H, D), - DOC_OV1 / Issues si des statuts sont posés. Notes : - Cas particulier : gestion des hashs Sonarr/qB → lié au GAP-001. SECTION À COMPLÉTER ==================== Ajouter progressivement les autres scripts/fonctions au fur et à mesure des audits et refactors. Pour chaque nouveau script : - préciser les blocs couverts, - pointer vers les sections de la spec, - noter les éventuelles divergences connues (ou TODO).