# Documentation IA Agents - LeCoffre Node ## 📋 Vue d'ensemble Ce rĂ©pertoire contient toute la documentation nĂ©cessaire pour les agents IA travaillant sur le projet LeCoffre Node. Cette documentation est **OBLIGATOIRE** et doit ĂȘtre consultĂ©e avant tout dĂ©ploiement. ## 📚 Documents Obligatoires ### **1. Documents de Contexte (À lire AVANT tout dĂ©ploiement)** - [`../docs/DEEP_ARCHITECTURE_ANALYSIS.md`](../docs/DEEP_ARCHITECTURE_ANALYSIS.md) - **NOUVEAU** - Analyse architecturale approfondie complĂšte - [`../docs/TECHNICAL_REFERENCE.md`](../docs/TECHNICAL_REFERENCE.md) - **NOUVEAU** - RĂ©fĂ©rence technique complĂšte - [`../docs/DEPLOYMENT_GUIDE.md`](../docs/DEPLOYMENT_GUIDE.md) - **NOUVEAU** - Guide de dĂ©ploiement complet - [`../docs/ARCHITECTURE_ANALYSIS.md`](../docs/ARCHITECTURE_ANALYSIS.md) - Analyse architecturale complĂšte - [`../docs/context.md`](../docs/context.md) - Contexte technique du projet - [`../docs/flux.md`](../docs/flux.md) - Architecture des services et flux - [`deployment-architecture.md`](deployment-architecture.md) - Architecture de dĂ©ploiement par phases ### **2. Documents de Processus** - [`CI_TRIGGER_PROCESS.md`](CI_TRIGGER_PROCESS.md) - Processus de dĂ©clenchement des CI - [`monitoring-progress.md`](monitoring-progress.md) - SystĂšme de monitoring et progression - [`quick-reference-monitoring.md`](quick-reference-monitoring.md) - Guide de rĂ©fĂ©rence rapide ### **3. Documents d'Architecture** - [`../docs/DEEP_ARCHITECTURE_ANALYSIS.md`](../docs/DEEP_ARCHITECTURE_ANALYSIS.md) - **NOUVEAU** - Analyse architecturale approfondie complĂšte - [`../docs/ARCHITECTURE_ANALYSIS.md`](../docs/ARCHITECTURE_ANALYSIS.md) - Analyse architecturale complĂšte 4NK + LeCoffre - [`deployment-architecture.md`](deployment-architecture.md) - Architecture de dĂ©ploiement par phases - [`best-practices-deployment.md`](best-practices-deployment.md) - Bonnes pratiques et interdictions - [`blindbit-oracle-deployment.md`](blindbit-oracle-deployment.md) - DĂ©ploiement et configuration BlindBit Oracle #### État d'avancement (services) - ✅ Ajout et publication du service `4NK_certificator` (ancrage mensuel on-chain) - Repo: `https://git.4nkweb.com/4nk/4NK_certificator` - SpĂ©cification: `docs/CERTIFICATOR_SPECIFICATION.md` - DĂ©ploiement: `lecoffre_node/docker-compose.certificator.yml` ### **4. Documents de DĂ©ploiement** - [`prompts/prompt-deploy.md`](prompts/prompt-deploy.md) - Prompt de dĂ©ploiement complet - **Scripts centralisĂ©s** : Tous les scripts d'agents IA sont maintenant dans `projects/lecoffre/lecoffre_node/scripts/` ## 🔐 Synchronisation des configurations (Vault) ```bash bash projects/lecoffre/lecoffre_node/scripts/sync-vault-full.sh ``` RĂ©sultats attendus: - `vault/confs2/` (miroir local) - `confs/` (copie centralisĂ©e) - `projects/lecoffre/lecoffre_node/confs/` (rĂ©plication projet) ## đŸ§č Standardisation des fichiers ignore ```bash bash projects/lecoffre/lecoffre_node/scripts/sync-ignore-files.sh ``` PortĂ©e: - `4NK_modules/*` (exclu: `4NK_vault`) - `projects/*/*` ## 🚹 RÈGLES CRITIQUES ### **đŸš« INTERDICTIONS ABSOLUES** ```bash # ❌ JAMAIS utiliser ces commandes docker compose --env-file .env.master up -d docker compose up -d docker compose start ``` ### **✅ OBLIGATIONS ABSOLUES** ```bash # ✅ Utiliser UNIQUEMENT ces scripts (NOUVEAU - centralisĂ©s) cd projects/lecoffre/lecoffre_node ./scripts/start.sh # DĂ©marrage sĂ©quentiel avec progression ./scripts/validate-deployment.sh # Validation complĂšte ./scripts/maintenance.sh # Menu de maintenance interactif ./scripts/backup-data.sh # Sauvegarde des donnĂ©es ./scripts/update-images.sh # Mise Ă  jour sĂ©curisĂ©e ``` ## đŸ—ïž Architecture de DĂ©ploiement ### **Principe Fondamental** Les services sont organisĂ©s en **5 phases** pour optimiser le dĂ©marrage et Ă©viter les dĂ©pendances inutiles : 1. **Services applicatifs** : Fonctionnent indĂ©pendamment du monitoring 2. **Services de monitoring** : Observent sans impacter les applications 3. **DĂ©pendances** : Seules les dĂ©pendances mĂ©tier sont respectĂ©es ### **Ordre par Phases** ``` Phase 1: Services de Base (ParallĂšle) ├── tor, sdk_storage, status-api Phase 2: Services Blockchain (SĂ©quentiel) ├── bitcoin → blindbit → sdk_relay Phase 3: Services Applicatifs (SĂ©quentiel) ├── lecoffre-front, ihm_client Phase 4: Services de Monitoring (SĂ©quentiel, IndĂ©pendant) ├── loki → promtail → grafana Phase 5: Services Utilitaires └── watchtower ``` ## 🔧 Scripts de DĂ©ploiement ### **Scripts OBLIGATOIRES** (centralisĂ©s dans `projects/lecoffre/lecoffre_node/scripts/`) | Script | Usage | Phases | |--------|-------|--------| | `start-with-progress.sh` | DĂ©marrage complet avec phases | 1, 2, 3, 5 | | `start-monitoring.sh` | DĂ©marrage monitoring indĂ©pendant | 4 | | `monitor-progress.sh` | Aperçu des services | Toutes | | `watch-progress.sh` | Surveillance temps rĂ©el | Toutes | | `logs-with-progress.sh` | Logs avec progression | Toutes | ### **Scripts INTERDITS** - `docker compose up -d` (toute variante) - Commandes Docker Compose directes ## 📊 Avantages de cette Architecture ### **1. Robustesse** - **Isolation** : Pannes de monitoring n'impactent pas les applications - **RĂ©cupĂ©ration** : RedĂ©marrage sĂ©lectif possible - **StabilitĂ©** : Services applicatifs fonctionnent mĂȘme sans monitoring ### **2. Performance** - **DĂ©marrage optimisĂ©** : Services parallĂšles quand possible - **DĂ©pendances respectĂ©es** : ChaĂźne de dĂ©marrage optimale - **Monitoring indĂ©pendant** : Ne ralentit pas les applications ### **3. Maintenance** - **RedĂ©marrage sĂ©lectif** : Monitoring ou applications sĂ©parĂ©ment - **Diagnostic facilitĂ©** : Scripts spĂ©cialisĂ©s par fonction - **Surveillance continue** : Progression visible en temps rĂ©el ## 🎯 Workflow de DĂ©ploiement ### **Étape 1: PrĂ©paration** 1. Lire tous les documents de contexte 2. VĂ©rifier la branche `ext` 3. Mettre Ă  jour les dĂ©pendances 4. Synchroniser les configurations ### **Étape 2: DĂ©ploiement** 1. **Services applicatifs** : `./scripts/start-with-progress.sh` 2. **Services de monitoring** : `./scripts/start-monitoring.sh` 3. **Surveillance** : `./scripts/monitor-progress.sh` ### **Étape 3: Validation** 1. Tests des URLs publiques 2. VĂ©rification des dashboards Grafana 3. Validation des flux fonctionnels 4. Documentation du retour d'expĂ©rience ## 📝 Documents de Retour d'ExpĂ©rience ### **Format des REX** - **Date** : Format ISO (YYYY-MM-DD) - **Agent** : Nom de l'agent IA - **Objectif** : But du dĂ©ploiement - **Statut** : SuccĂšs/Échec/Partiel - **ProblĂšmes** : DifficultĂ©s rencontrĂ©es - **Solutions** : Actions correctives - **Leçons** : Apprentissages ### **Exemple de REX** - [`REX_Deploiement_2025-09-21.md`](REX_Deploiement_2025-09-21.md) ## 🔍 Points d'Attention ### **DĂ©pendances Critiques** 1. **bitcoin** → **blindbit** → **sdk_relay** : ChaĂźne blockchain 2. **sdk_relay** → **lecoffre-front** : ChaĂźne applicative 3. **loki** → **promtail** → **grafana** : ChaĂźne monitoring ### **Healthchecks** - Tous les services ont des healthchecks informatifs - Les dĂ©pendances attendent que les services soient "healthy" - Timeouts adaptĂ©s selon la criticitĂ© ### **Variables d'Environnement** - Configuration centralisĂ©e dans `.env.master` - Tous les scripts utilisent `--env-file .env.master` - Pas de fichiers `.env` dispersĂ©s ### **Configuration Loki (CRITIQUE)** - **OBLIGATOIRE** : `http_listen_address: 0.0.0.0` (pas 127.0.0.1) - **OBLIGATOIRE** : `instance_addr: 0.0.0.0` (pas 127.0.0.1) - **Fichier** : `/conf/loki/loki-config.yaml` avec configuration complĂšte - **Healthcheck** : Utiliser `wget` (pas `curl`) ## 🚹 Signaux d'Alerte ### **Si vous voyez ces commandes, c'est une ERREUR :** ```bash docker compose --env-file .env.master up -d docker compose up -d docker compose start ``` ### **Si vous voyez ces comportements, c'est une ERREUR :** - Services de monitoring qui bloquent les applications - DĂ©marrage de tous les services en parallĂšle - Absence de suivi de progression - Logs sans informations de progression ### **Si vous voyez ces rĂ©sultats, c'est CORRECT :** - Phases de dĂ©marrage visibles - Progression Bitcoin IBD affichĂ©e - Services de monitoring indĂ©pendants - Surveillance continue opĂ©rationnelle ## 📞 Support ### **En cas de problĂšme :** 1. Consulter les documents de contexte 2. VĂ©rifier les bonnes pratiques 3. Utiliser les scripts de diagnostic 4. Documenter le problĂšme et la solution ### **Pour amĂ©liorer :** 1. Proposer des amĂ©liorations dans les REX 2. Mettre Ă  jour la documentation 3. Tester les nouvelles approches 4. Valider avec l'Ă©quipe --- **Document créé le 2025-09-21** **Version** : 1.0 **Usage** : Obligatoire pour tous les agents IA **Mise Ă  jour** : À chaque dĂ©ploiement --- ## 🔧 Scripts de dĂ©ploiement (nouveau) ExĂ©cuter depuis `4NK_env/`. - Sync des configurations depuis le Vault vers `confs/`: ```sh sh IA_agents/prompts/prompt-deploy/scripts/sync-vault-full.sh ``` PrĂ©requis: `vault/.env` (VAULT_BASE_URL, VAULT_USER|VAULT_USER_ID, VAULT_ENV). - DĂ©ploiement sĂ©quencĂ© de tous les services (respect des phases et healthchecks): ```sh sh IA_agents/prompts/prompt-deploy/scripts/deploy-all.sh ``` Affiche la progression Tor (bootstrap %), Bitcoin (sync), BlindBit (sync/scan), Relay (scan), puis vĂ©rifie ports et URLs internes/externes. - VĂ©rification rapide de la santĂ©: ```sh sh IA_agents/prompts/prompt-deploy/scripts/quick-health-check.sh ``` Ces scripts remplacent tout usage d’un `docker compose up` global pour garantir l’ordre par phases et la lisibilitĂ© de la progression. ### Emplacements standards (dĂ©ploiement) - Confs: `/home/debian/4NK_env/lecoffre_node/confs/` - Logs: `/home/debian/4NK_env/lecoffre_node/logs/` - Data: `/home/debian/4NK_env/lecoffre_node/data/` - Backups: `/home/debian/4NK_env/lecoffre_node/backups/`