Files
g9-migration/ETAT-DE-LART-2026-09-30.md
T
Effi c246427cf5 Phase 4 : kit G9 (scripts + compose) + Gitea T4.4 backend Postgres
- compose/gitea : SQLite -> Postgres (source = paquet App Center DSM, gitea_db 13 repos/3 users), image épinglée 1.27.3, push-to-create
- scripts/07a-migrate-gitea.sh : export pg_dump (MVCC, .25 lecture seule) + tar/ssh (sshd DSM refuse rsync/scp) + manifestes sha256
- scripts/03b-secrets.sh : secrets gitea ajoutés
- journal.md : entrées Phase 4
2026-10-11 07:45:00 +02:00

350 lines
19 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# État de l'art — Infrastructure Folzo Home
**Dernière mise à jour** : 30/09/2026
**Réseau** : `192.168.1.0/24`
**Objectif** : Audit complet (hardware, disques, services, réseau, problèmes) avant définition des besoins et restructuration.
> ⚠️ **Document supplanté** : cet état de l'art est un **snapshot daté** (référence matérielle à la date du scan). Pour les **décisions, corrections et le plan de (re)création**, voir **`DOSSIER-RECREATION.md`** (v2, source de vérité courante, vivante). Les specs matérielles détaillées (disques, conteneurs) restent ici comme référence ; les rôles cibles et le plan y sont supplantés. *(Le dossier v1 `archive/DOSSIER-INFRA.md` est lui-même supplanté par la v2.)*
> **Modèle de document** : cet état de l'art est un **snapshot daté** (le nom de fichier porte la date du scan). Il fait référence **à la date indiquée**, pas en continu. Après la restructuration, chaque évolution majeure produit un **nouveau fichier daté** ; le plus récent est la référence courante. Les données proviennent d'un scan live (30/09/2026) : `lscpu`, `free`, `df`, `docker ps`, `nvidia-smi`, `systemctl`, sondes réseau, et commandes DSM exécutées manuellement sur le xpenology. **Ce snapshot est figé à la date du scan (30/09/2026)** — les faits mesurés après (diagnostic USB 01/10, incident Nextcloud + état HyperBackup + accès SSH 06/10) sont dans le snapshot suivant : **`ETAT-DE-LART-2026-10-06.md`**.
---
## Sommaire
1. [Topologie réseau](#1-topologie-réseau)
2. [Serveurs](#2-serveurs)
3. [Inventaire disques](#3-inventaire-disques)
4. [Freebox Delta](#4-freebox-delta--1921681254)
5. [PC & périphériques](#5-pc--périphériques)
6. [Services IA cartographiés](#6-services-ia-cartographiés)
7. [Problèmes identifiés](#7-problèmes-identifiés-par-priorité)
8. [Culture de la donnée](#8-culture-de-la-donnée)
9. [Vision cible](#9-vision-cible)
10. [Migration xpenology → Mini PC i3-13100T](#10-migration-xpenology--mini-pc-i3-13100t-à-étudier)
11. [Prochaines étapes](#11-prochaines-étapes-phase-2--à-définir)
---
## 1. Topologie réseau
### 1.1 Mapping IP → équipement
| IP | OUI / Fabricant | Nom | Rôle |
|----|-----------------|-----|------|
| 192.168.1.1 | — | **AdGuard Home** | DNS interne, blocage pubs, filtre enfants |
| 192.168.1.2 | Netgear | Switch | Commutateur |
| 192.168.1.3 | ASUS | Switch | Commutateur |
| 192.168.1.5 | Xikestor | Switch | Commutateur |
| 192.168.1.11 | — | **folzo-corp** | Station GPU — IA (llama.cpp, Ollama, STT, OCR) |
| 192.168.1.15 | — | PC Ewan | Poste famille |
| 192.168.1.16 | — | PC Noah | Poste famille |
| 192.168.1.17 | — | PC famille | Poste famille |
| 192.168.1.20 | — | **Home Assistant** | VM Freebox (IP fixe .20) |
| 192.168.1.21 | Diagral | **Alarma** | Centrale d'alarme |
| 192.168.1.25 | Synology | **xpenology / NVR** | NVR DVA1622 + conteneurs + disques |
| 192.168.1.26 | Synology | **218play** | NAS backup (2× 2 To) |
| 192.168.1.27 | — | **effi-server** | Serveur Docker principal (IA/RAG/Dify) |
| 192.168.1.41 | Reolink | **NVR Reolink #1** | Enregistreur vidéo (RTSP :554, :8000) |
| 192.168.1.123 | Reolink | **NVR Reolink #2** | Enregistreur vidéo |
| 192.168.1.191 | Reolink | **NVR Reolink #3** | Enregistreur vidéo (RTSP :554, :8000) |
| 192.168.1.51 | — | Shield TV | Android TV |
| 192.168.1.52 | — | Shield TV | Android TV |
| 192.168.1.53 | — | Freebox Player Pop | Boîtier TV |
| 192.168.1.54 | — | Denon 2400H | Ampli home-cinéma |
| 192.168.1.55 | — | Mi Box | Boîtier TV |
| 192.168.1.56–.59 | — | Périphériques | TV / boîtiers / divers |
| 192.168.1.254 | Free | **Freebox Delta** | Routeur / box (VMs HA + AdGuard) |
**Notes topologiques**
- La **Freebox Delta** est le routeur (`.254`). **AdGuard Home** est un service séparé sur `.1` (DNS).
- **3 NVR Reolink** (`.41`, `.123`, `.191`) — découverts lors de l'audit. Ce sont des enregistreurs vidéo autonomes, **pas** des VMs oubliées.
- **Home Assistant** tourne en VM sur la Freebox, IP fixe `.20`.
- **Valheim ×2 n'est PAS une erreur** : un monde est la sauvegarde du monde pré-1.0, l'autre est le monde actuel. Les joueurs conseillaient d'en recréer un.
---
## 2. Serveurs
### 2.1 effi-server — `192.168.1.27`
**Hardware**
- OS : Ubuntu 24.04.4 LTS
- CPU : Intel Pentium Silver J5040 @ 2.00 GHz — 4 cœurs / 4 threads
- RAM : 7.6 GiB (3.9 GiB utilisés au scan)
- Disque : LVM `ubuntu--vg-ubuntu--lv` — **98 Go, 87 Go utilisés, 6.0 Go libres, 94%**
**Rôle** : Serveur Docker principal — IA / RAG / Dify / orchestration.
**Conteneurs Docker (34)**
| Conteneur | Image | Port(s) | Statut | Rôle |
|-----------|-------|---------|--------|------|
| open-webui | ghcr.io/open-webui/open-webui:main | 3000 | Up (healthy) | Interface LLM |
| llm-proxy | effi-llm-proxy | 3012 (interne, non publié) | Up | Proxy LLM (LiteLLM) |
| qdrant | qdrant/qdrant:latest | 6333-6334 | Up | Vector DB (RAG) |
| n8n | docker.n8n.io/n8nio/n8n:latest | 5678 | Up | Automatisation |
| hermes-webui | ghcr.io/nesquena/hermes-webui:latest | 8787 | Up (healthy) | WebUI agent |
| effi-searxng | searxng/searxng:latest | 11112 | Up | Moteur de recherche |
| mcpo | ghcr.io/open-webui/mcpo:main | 8000 | Up | MCP orchestrator |
| pipelines | ghcr.io/open-webui/pipelines:main | 9099 | Up | Pipelines OpenWebUI |
| whisper | fedirz/faster-whisper-server:latest-cpu | 8200 | Up | STT |
| openedai-speech | ghcr.io/matatonic/openedai-speech | 8100 | Up | TTS |
| effi-ocr | effi-ocr-effi-ocr | 8301 | Up | OCR |
| effi-leantime-mcp | effi-leantime-mcp:latest | 8079 | Up | MCP Leantime |
| couchdb | couchdb:3.3 | 5984 | Up | Obsidian LiveSync |
| obsidian | lscr.io/linuxserver/obsidian:latest | 3100 | Up | Obsidian |
| watchtower | nickfedor/watchtower:latest | — | Up (healthy) | Mises à jour auto |
| beszel-agent | henrygd/beszel-agent:latest | — | Up | Monitoring |
| **Dify (14 conteneurs)** | langgenius/dify-* :1.16.1 | 3001 (nginx), 5003 | Up | Plateforme IA/agents |
| pterodactyl-panel-1 | ghcr.io/pterodactyl/panel:v1.15.1 | 8085 | Up | Panel de jeux |
| pterodactyl-database-1 | mariadb:11 | 3306 | Up | DB Pterodactyl |
| pterodactyl-cache-1 | redis:alpine | 6379 | Up | Cache Pterodactyl |
| valheim (aff5199c…) | valheim-pterodactyl:1 | 2456-2458 | Up (healthy) | **Valheim monde actuel** |
**Dify** : `docker-api-1`, `docker-worker-1`, `docker-worker_beat-1`, `docker-web-1`, `docker-agent_backend-1`, `docker-plugin_daemon-1`, `docker-db_postgres-1`, `docker-redis-1`, `docker-pgvector-1`, `docker-sandbox-1`, `docker-local_sandbox-1`, `docker-agent_ssrf_proxy-1`, `docker-ssrf_proxy-1`, `docker-nginx-1`.
---
### 2.2 folzo-corp — `192.168.1.11`
**Hardware**
- OS : Fedora Linux 44 (Workstation)
- CPU : AMD Ryzen 7 5800X3D — 8 cœurs / 16 threads
- RAM : 62 GiB (27 GiB utilisés au scan)
- Disque : NVMe `nvme0n1p3` (Samsung 990 PRO) — **1.9 To, 885 Go utilisés, 974 Go libres, 48%**
- GPU : **2× NVIDIA GeForce RTX 3060 (12288 MiB chacune)** — 11052 MiB et 11016 MiB utilisés au scan
> ⚠️ Les docs existantes indiquaient « AMD RX 7800 XT (16 Go) » et « 32 Go RAM ». La réalité : **2× RTX 3060 12 Go** et **62 Go RAM**. → Voir section « Culture de la donnée ».
**Rôle** : Station GPU dédiée IA.
**Services (systemd / natifs)**
| Service | Port | Statut | Rôle |
|---------|------|--------|------|
| llama-server (llama.cpp) | 8081 | **active** (health OK) | LLM principal (Swift-1.5 Qwen 27B IQ4_XS) — 10.5 Go VRAM |
| Ollama | 11434 | **active** (v0.30.10) | 28 modèles (vision, embeddings, legacy) |
| ComfyUI | 8188 | **inactive** (port mort) | Génération d'images — **à vérifier** |
| effi-services.service | — | **failed** | Bundle de services — **à réparer** |
**Conteneurs Docker (9)**
| Conteneur | Image | Port(s) | Statut | Rôle |
|-----------|-------|---------|--------|------|
| effi-stt | effi-stt-effi-stt | 8200 | Up (**unhealthy**) | STT |
| effi-ocr | effi-ocr-effi-ocr | 8301 | Up (**unhealthy**) | OCR |
| kreuzberg | ghcr.io/kreuzberg-dev/kreuzberg:latest | 8300 | Up (healthy) | OCR PaddleOCR FR |
| docker-ragflow-cpu-1 | infiniflow/ragflow:v0.26.4 | — | **Restarting (126)** | RAG — **crash loop** |
| docker-mysql-1 | mysql:8.0.39 | 3306 | Up (healthy) | DB RAGFlow |
| docker-es01-1 | elasticsearch:8.11.3 | 1200 | Up (healthy) | Recherche RAGFlow |
| docker-minio-1 | pgsty/minio | 9000-9001 | Up (healthy) | Stockage RAGFlow |
| docker-redis-1 | valkey/valkey:8 | 6379 | Up (healthy) | Cache RAGFlow |
| beszel-agent | henrygd/beszel-agent-nvidia:latest | — | Up | Monitoring |
- **Modèles GGUF** : `/home/folzo/models` — **98 Go**.
- **GPU en cours** : 2× `llama-server` (llama.cpp) ~10.5 Go chacun, Ollama llama-server résiduel.
- **Arrêté** : `openedai-speech` (*Exited* 137, il y a 6 semaines).
---
### 2.3 xpenology / NVR — `192.168.1.25`
**Hardware**
- OS : Synology DSM (NVR)
- Modèle : **Synology NVR DVA1622** (système épuré — pas de shell interactif SSH, accès via terminal DSM)
- CPU : Intel Core i5-7500T — 4 cœurs / 8 threads
- RAM : 15 Go
- Disques : voir §3
> **Accès SSH** (documenté 06/10/2026) : voir le snapshot suivant **`ETAT-DE-LART-2026-10-06.md` §1**.
**Rôle** : NVR (Surveillance Station) + conteneurs + stockage.
**Conteneurs Docker (~30)**
| Conteneur | Port | Rôle |
|-----------|------|------|
| Leantime | 8380 | Gestion de projet |
| Nextcloud | 8087 | Cloud / drive |
| Affine | 3010 | Workspace |
| Joplin | 22300 | Notes |
| OnlyOffice | 8088 | Bureautique |
| Vaultwarden | 3013 | Gestionnaire de mots de passe |
| Gitea | 3033 | Git |
| n8n | 5678 | Automatisation |
| InfluxDB | 8086 | Métriques |
| Beszel Hub | 8090 | Monitoring |
| OpenWebUI | — | Interface LLM |
| Valheim | — | **Valheim monde backup pré-1.0** |
| Sonarr / Radarr / Prowlarr / Jackett | — | Media management |
| qBittorrent / Deluge | — | Torrents |
| Watchtower | — | Mises à jour |
| Flaresolverr | — | Anti-Cloudflare |
| mini-qr | 8014 | QR |
| **Morts** : wg-easy, mcpo, youtubedl, wol-proxy, xteve | — | À trier |
**Shares Docker** : docker, docker-REC, Download, Favoris, gitea, homes, music, NetBackup, photo, rr, Save, surveillance, web, web_packages.
---
### 2.4 218play — `192.168.1.26`
**Hardware**
- OS : Synology DSM
- Disques : **2× 2 To** (à confirmer en RAID)
- Ports ouverts : 139, 445 (SMB), 80/443 → redirection DSM (port 14351)
**Rôle** : **NAS de backup**.
---
## 3. Inventaire disques
### 3.1 Par machine
| Machine | Disque | Taille | Utilisé | Libre | Usage | Mount |
|---------|--------|--------|---------|-------|-------|-------|
| effi-server | LVM ubuntu-lv | 98 Go | 87 Go | 6.0 Go | **94%** | `/` |
| folzo-corp | NVMe 990 PRO | 1.9 To | 885 Go | 974 Go | 48% | `/` |
| xpenology | md0 (système) | 7.9 Go | 3.7 Go | 4.1 Go | 48% | `/` |
| xpenology | volume1 (vg1) | 1.8 To | 1.1 To | 711 Go | 61% | `/volume1` |
| xpenology | volume2 (vg2) | 1.8 To | 729 Go | 1.1 To | 41% | `/volume2` |
| xpenology | **USB1** (usb1p1) | **15 To** | **14 To** | **1.3 To** | **92%** | `/volumeUSB1/usbshare` |
| xpenology | **USB2** (usb2p2) | **5.5 To** | **5.1 To** | **456 Go** | **92%** | `/volumeUSB2/usbshare` |
| xpenology | **USB3** (sda2) | **3.6 To** | **3.2 To** | **519 Go** | **87%** | **NON MONTÉ** (secteurs HS) |
| 218play | 2× 2 To | ~4 To | à confirmer | à confirmer | — | — |
| Freebox Delta | 3× 1 To RAID5 | 2 To | à confirmer | à confirmer | — | — |
| Laptop | SSD 1 | 2 To | à confirmer | à confirmer | — | — |
| Laptop | SSD 2 | 1 To | à confirmer | à confirmer | — | — |
| Mini PC HP | (à préciser) | — | — | — | — | — |
> **⚠️ Suivi post-scan (01/10 & 06/10/2026)** : le diagnostic du **disque USB 3 backup hors service** (01/10), l'**incident Nextcloud** causé par Watchtower (06/10), l'**état du backup HyperBackup** (échec données depuis 01/10/2024) et l'**accès SSH** au xpenology (06/10) sont documentés dans le snapshot suivant : **`ETAT-DE-LART-2026-10-06.md`** (§1–§4). Ce snapshot 30/09 est figé à la date du scan.
---
## 4. Freebox Delta — `192.168.1.254`
- **Rôle** : Routeur / box (IP `.254`).
- **VMs** : Home Assistant (`.20`) + AdGuard Home (`.1`).
- **Disques** : 3× 1 To en RAID5 = 2 To (backup, peu utilisé).
- **⚠️ Problème thermique** : la Freebox monte à **85°C** — usure / risque de throttling. À optimiser (ventilation, placement, profils thermiques).
---
## 5. PC & périphériques
| Équipement | Hardware | Rôle actuel | Rôle cible |
|------------|----------|-------------|------------|
| **Laptop** | Ryzen 7 7800H, 32 Go, 2 To + 1 To SSD, RTX 3050 Ti | Workstation principale | Workstation principale |
| **BC 250** | (à préciser) | — | **Steam Machine** (jeu) |
| **Mini PC HP** | i3-13100T, 16 Go RAM | Non branché | **Remplacement xpenology** (cœur famille) |
| Shield TV ×2 | — | Streaming | — |
| Freebox Player Pop | — | TV | — |
| Denon 2400H | — | Audio | — |
| Mi Box | — | TV | — |
| Alarma Diagral (.21) | — | Alarme | — |
| Switches (.2/.3/.5) | Netgear / ASUS / Xikestor | Réseau | — |
> **BC 250** : nom de code d'un PC de la maison, candidat au rôle de **Steam Machine** (jeu). Hardware à préciser lors de l'audit.
>
> Le **Mini PC HP Pro 400 G9 (i3-13100T)** est le remplaçant du xpenology (cœur famille). À étudier — voir §10. *(Spec corrigée : les docs héritées disaient i3-12100.)*
---
## 6. Services IA cartographiés
| Service | Machine | Port | Modèle / Détail |
|---------|---------|------|-----------------|
| llama-server (llama.cpp) | folzo-corp | 8081 | Swift-1.5 Qwen 27B IQ4_XS — 10.5 Go VRAM |
| Ollama | folzo-corp | 11434 | v0.30.10 — 28 modèles (vision, embeddings, legacy) |
| effi-stt (Whisper) | folzo-corp | 8200 | STT (unhealthy) |
| whisper (faster-whisper) | effi-server | 8200 | STT |
| effi-ocr | folzo-corp + effi-server | 8301 | OCR |
| kreuzberg | folzo-corp | 8300 | PaddleOCR FR |
| openedai-speech | effi-server | 8100 | TTS (voix Effi) |
| llm-proxy (LiteLLM) | effi-server | 3012 (interne, non publié) | Point d'entrée LLM unique |
| OpenWebUI | effi-server | 3000 | Interface |
| Qdrant | effi-server | 6333 | Vector DB (RAG, bge-m3) |
| Dify | effi-server | 3001 | Plateforme agents |
| RAGFlow | folzo-corp | — | RAG (crash loop) |
| ComfyUI | folzo-corp | 8188 | Images (à vérifier) |
| Modèles GGUF | folzo-corp | — | 98 Go dans `/home/folzo/models` |
---
## 7. Problèmes identifiés (par priorité)
| # | Priorité | Problème | Machine | Détail |
|---|----------|----------|---------|--------|
| 1 | 🔴 CRITIQUE | **Disque de backup USB non reconnu** | xpenology | Le 3e USB (backup du Synology) n'est pas monté → **pas de backup** |
| 2 | 🔴 CRITIQUE | **Freebox Delta à 85°C** | Freebox | Usure thermique, risque throttling |
| 3 | 🟠 Haute | **RAGFlow crash loop** | folzo-corp | `Restarting (126)` — entrypoint permission denied |
| 4 | 🟠 Haute | **effi-services.service FAILED** | folzo-corp | Bundle de services en échec |
| 5 | 🟠 Haute | **effi-server disque à 94%** | effi-server | 6.0 Go libres seulement |
| 6 | 🟡 Moyenne | **ComfyUI port mort** | folzo-corp | Port 8188 inactif — à vérifier (probablement OK) |
| 7 | 🟡 Moyenne | **effi-stt / effi-ocr unhealthy** | folzo-corp | Conteneurs up mais statut unhealthy |
| 8 | 🟡 Moyenne | **Conteneurs morts NAS** | xpenology | wg-easy, mcpo, youtubedl, wol-proxy, xteve |
| 9 | 🟡 Moyenne | **~18 modèles Ollama legacy** | folzo-corp | À trier (98 Go de GGUF au total) |
| 10 | 🟡 Moyenne | **USB1/USB2 à 92%** | xpenology | 15 To + 5.5 To quasi pleins |
| 11 | 🟢 Basse | **Docs obsolètes** | — | GPU / RAM inexactes → culture de la donnée |
| 12 | 🟢 Basse | **Token HA perdu** | — | Non relocalisable. À régénérer dans HA (Profil → Jetons d'accès longue durée). |
---
## 8. Culture de la donnée
- **Docs existantes inexactes** : `effi/README.md` et mémoires indiquent « GPU RX 7800 XT (16 Go) » et « 32 Go RAM » pour folzo-corp. Réel : **2× RTX 3060 12 Go** + **62 Go RAM**. → Corriger les sources.
- **Token Home Assistant** : perdu (non relocalisable). À régénérer dans HA (Profil → Jetons d'accès longue durée).
- **Dispersion** : infos éparpillées entre `effi/README.md`, mémoires Hermes, docs ad-hoc (`DIAGNOSTIC-KREUZBERG.md`, etc.). Ce document doit devenir la **source de vérité unique**.
- **Principe** : noter la réalité mesurée (scan live) plutôt que la documentation héritée.
---
## 9. Vision cible
> ⚠️ **Supplanté** : la vision cible et les rôles machines sont désormais dans `DOSSIER-RECREATION.md` §R2. Cette section est conservée comme trace du scan initial.
| Machine | Rôle cible |
|---------|-----------|
| **folzo-corp** (2× 3060) | **100% dédié IA** |
| **Laptop** (7800H + 3050 Ti) | **Workstation principale** |
| **BC 250** | **Steam Machine** (jeu) |
| **Mini PC HP** (i3-13100T) | **Cœur famille** (photos, fichiers, média) — remplace le xpenology |
| **218play** | **Backup** |
| **Freebox Delta** | **HA + AdGuard** (optimisation thermique) |
| **xpenology / NVR** | NVR + apps (jusqu'à migration) |
| **effi-server** | IA / RAG / Dify |
---
## 10. Migration xpenology → Mini PC i3-13100T (à étudier)
**Objectif** : migrer le xpenology vers le **Mini PC HP Pro 400 G9 (i3-13100T, 16 Go RAM)** sur la même IP (.25). Le G9 devient le **cœur famille** (photos, fichiers, notes, mots de passe, média, domotique, caméras). Le xpenology est **décommissionné** à l'issue de la migration (plus de DSM, plus de risque MAJ, plus de zone grise légale). La surveillance migre vers le NAS (Frigate) si souhaité. *(Supplanté par `DOSSIER-RECREATION.md` §R2.)*
**Conteneurs candidats à la migration (non-IA)**
- Leantime, Nextcloud, Affine, Joplin, OnlyOffice, Vaultwarden, Gitea, InfluxDB, Watchtower, Flaresolverr, mini-qr
- Sonarr / Radarr / Prowlarr / Jackett / qBittorrent / Deluge (multimédia)
- **Jellyfin (nouveau sur le G9 — transcodage)** — *note : Jellyfin n'est PAS dans l'inventaire des conteneurs xpenology actuels (§2.3) ; c'est une installation neuve sur le G9*
**Fin de vie du xpenology**
- Le xpenology est **décommissionné** après migration (plus de DSM).
- La surveillance (NVR Reolink autonomes) reste ; la vision IA migre vers le G9 (Frigate) si souhaité.
**Points d'attention**
- 16 Go RAM du Mini PC : dimensionner la charge (Nextcloud + OnlyOffice + Jellyfin = gourmands).
- Disques : où stocker les données multimédia (USB 15 To / 5.5 To ?).
- Le backup USB HS (snapshot `ETAT-DE-LART-2026-10-06.md` §2) doit être résolu **avant** toute migration.
---
## 11. Prochaines étapes (Phase 2 — à définir)
> ⚠️ **Supplanté** : le plan de (re)création est désormais dans `DOSSIER-RECREATION.md` §R5. Cette section est conservée comme trace du scan initial.
1. **Résoudre les 2 critiques** : disque backup USB + thermique Freebox.
2. **Définir les besoins** : projet de culture de la donnée, projet Effi, optimisations.
3. **Trier les ballasts** : RAGFlow, ComfyUI, Ollama legacy, conteneurs morts NAS.
4. **Planifier la restructuration** : migration xpenology → i3-13100T (G9), spécialisation folzo-corp en IA.
5. **Réconcilier la documentation** : ce document = source de vérité, corriger les sources héritées.