# Changelog - 4NK Node ## [1.1.2] - 2025-08-27 ### Added - Scripts de déploiement initial: - `scripts/deploy_first_install_with_certs.sh` (Let’s Encrypt webroot + cron de renouvellement) - `scripts/deploy_first_install_no_certs.sh` (auto‑signé) ### Changed - Nginx: activation de HSTS (Strict‑Transport‑Security) sur l’hôte public - Documentation: INSTALLATION.md et CONFIGURATION.md enrichies (webroot ACME, renouvellement, déploiement automatisé) Tous les changements notables de ce projet seront documentés dans ce fichier. Le format est basé sur [Keep a Changelog](https://keepachangelog.com/fr/1.0.0/), et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [1.1.0] - 2025-08-26 ### Added - Script d’amorçage `scripts/bootstrap.sh` pour installer git, Docker, Docker Compose, Node.js/npm (nvm) et ajouter l’utilisateur au groupe docker - Test de prérequis `tests/external/test_tooling_versions.sh` pour vérifier les versions des outils - Infrastructure de tests complète avec organisation par catégorie - Scripts d'exécution automatisés pour les tests - Documentation technique complète (Architecture, API) - Guide de contribution et code de conduite - Scripts de maintenance et nettoyage automatique - Reverse proxy central `reverse_proxy` (Nginx) servant `ihm_client` et proxifiant `sdk_relay` (HTTPS/WSS) - Intégration `sdk_storage` (sous-module, service Docker) et routage `/storage/*` via Nginx (HTTPS) - Intégration `sdk_signer` (sous-module, service Docker) et routage WSS `/signer/ws/` via Nginx - Script `scripts/generate_certs.sh` pour certificats auto-signés sécurisés (droits durcis) - Script `scripts/build_ui_local.sh` pour construire l’UI localement (gestion des permissions `dist/`) - Script `scripts/cleanup_legacy.sh` pour archiver les fichiers devenus obsolètes - Fichier `proxy/nginx.conf` consolidant la configuration publique (CSP, MIME, WS, CORS) - Service Tor reconstruit localement (`tor/Dockerfile`) avec support `obfs4proxy` et healthcheck ### Dependencies - Nginx: 1.29.x (image `nginx:alpine`) - Node.js: 20.x (image `node:20-alpine`) - Rust: 1.x (image `rust:1`) - Debian runtime: stable-slim (image `debian:stable-slim`) - Bitcoin Core: 24.1.0 (réseau signet) - Alpine Linux (reverse proxy): 3.22 ### Changed - Mise à jour de `.cursorignore` pour exclure dépendances, artefacts de build, logs et secrets - Ajout d’exclusions `.cursorignore` pour artefacts Docker et dossiers spécifiques `ihm_client` - Ajout d’exclusions `.cursorignore` pour archives et sauvegardes (zip, tar, gz, bz2, xz, zst, 7z, rar, iso, bak) - Exclusion du répertoire `archive/` dans `.cursorignore` - Ajout d’exclusions `.cursorignore` pour dumps SQL et exports de bases (sql, dump, sqlite, db) - Réorganisation complète de la structure des tests - Amélioration de la documentation avec guides détaillés - Optimisation des scripts de démarrage et redémarrage - `docker-compose.yml` modernisé (suppression de la clé `version:`) et services internes (ports supprimés) - Sortie d’Nginx hors `ihm_client` et centralisation dans `reverse_proxy` - Documentation mise à jour (Architecture, Configuration, Installation, Usage, Testing) - `docker-compose.yml` : ajout du service `sdk_storage`, volume `sdk_storage_data`, dépendances proxy - `docker-compose.yml` : ajout du service `sdk_signer` (runtime ts-node, build wasm intégré), volume `sdk_signer_data` - `tor/torrc` actualisé (ControlPort local, logs stdout, bridges obfs4 optionnels) - Activation et test des bridges obfs4 fournis par le Tor Project ; ajout de recommandations de diagnostic (netcat, tests SOCKS, distinction onion public vs pair signet) ### Fixed - Correction des problèmes de connectivité entre services - Amélioration de la gestion des erreurs dans les tests - Correction des configurations Docker - Résolution des erreurs TypeScript liées à `pkg/sdk_client` en ajoutant `scripts/setup-remote-deps.sh` et mise à jour du build UI - Correction des erreurs de MIME et de download côté Nginx via `proxy/nginx.conf` - Correction `EACCES` de build UI via gestion des permissions `ihm_client/dist` - Diagnostic et correction outillage réseau : installation de `netcat-openbsd` sur l’hôte et dans `bitcoin-signet` pour tests SOCKS/TCP ## [1.1.1] - 2025-08-27 ### Changed - `docker-compose.yml` : ajout d’un mini serveur HTTP (busybox httpd) sur `sdk_signer` pour l’endpoint de santé interne 9092, exposé via Nginx en `/signer/health`. - `sdk_relay/healthcheck.sh` : assouplissement du healthcheck (attente d’un indicateur de démarrage) pour éviter les faux négatifs durant la phase de rescan/initialisation. - CI : publication automatique des releases sur push de tag `v*` via secret `RELEASE_TOKEN`. ### Fixed - `/signer/health` retournait 502 via le reverse proxy ; désormais HTTP 200 avec corps `ok`. ### Added - Scripts de déploiement initial: - `scripts/deploy_first_install_with_certs.sh` (Let’s Encrypt webroot, cron de renouvellement) - `scripts/deploy_first_install_no_certs.sh` (auto‑signé) ## [1.0.0] - 2024-12-19 ### Added - Infrastructure Docker complète pour 4NK Node - Support des paiements silencieux (Silent Payments) Bitcoin - Nœud Bitcoin Core configuré en mode signet - Service Blindbit pour les filtres de paiements silencieux - Service SDK Relay avec synchronisation mesh - Service Tor pour l'anonymat - Configuration multi-relais (3 instances) - Synchronisation automatique entre relais - Cache de déduplication des messages - Healthchecks pour tous les services - Scripts d'automatisation (démarrage, redémarrage, monitoring) - Tests de connectivité et d'intégration - Documentation complète en français ### Features - **Bitcoin Core** : Nœud signet avec RPC et ZMQ - **Blindbit** : Service de filtres pour les paiements silencieux - **SDK Relay** : Relais avec interface WebSocket et synchronisation mesh - **Tor** : Proxy anonyme pour Bitcoin Core - **Synchronisation** : Système de synchronisation entre relais - **Monitoring** : Scripts de monitoring et surveillance - **Tests** : Suite de tests complète ### Technical - Architecture Docker avec orchestration via Docker Compose - Réseau privé `btcnet` pour la communication inter-services - Volumes persistants pour les données - Configuration externalisée via fichiers .conf - Logging structuré avec rotation - Gestion des erreurs et retry automatique ## [0.9.0] - 2024-12-15 ### Added - Version initiale de l'infrastructure - Configuration de base des services - Tests de connectivité simples - Documentation de base ### Changed - Configuration initiale des services Docker - Premiers tests d'intégration ### Fixed - Problèmes de connectivité initiale - Configuration des ports et réseaux ## [0.8.0] - 2024-12-10 ### Added - Support de la synchronisation entre relais - Implémentation du cache de déduplication - Types de messages de synchronisation - Gestionnaire de synchronisation (SyncManager) ### Changed - Amélioration de l'architecture de synchronisation - Optimisation des performances de synchronisation ### Fixed - Correction des problèmes de synchronisation - Amélioration de la stabilité des connexions mesh ## [0.7.0] - 2024-12-05 ### Added - Support des paiements silencieux - Intégration avec le service Blindbit - Tests de paiements silencieux - Documentation des APIs ### Changed - Amélioration de l'intégration Bitcoin Core - Optimisation du scan des blocs ### Fixed - Correction des problèmes de détection des paiements - Amélioration de la performance du scan ## [0.6.0] - 2024-11-30 ### Added - Interface WebSocket pour SDK Relay - Support des messages temps réel - Tests WebSocket - Documentation de l'API WebSocket ### Changed - Amélioration de l'interface WebSocket - Optimisation des performances de communication ### Fixed - Correction des problèmes de connexion WebSocket - Amélioration de la gestion des erreurs ## [0.5.0] - 2024-11-25 ### Added - Support de Tor pour l'anonymat - Configuration du proxy Tor - Tests de connectivité Tor - Documentation de la configuration Tor ### Changed - Amélioration de la configuration réseau - Optimisation de la connectivité anonyme ### Fixed - Correction des problèmes de connectivité Tor - Amélioration de la stabilité du proxy ## [0.4.0] - 2024-11-20 ### Added - Configuration multi-relais - Support de 3 instances SDK Relay - Tests multi-relais - Documentation de la configuration multi-relais ### Changed - Amélioration de l'orchestration Docker - Optimisation de la configuration multi-relais ### Fixed - Correction des problèmes de configuration multi-relais - Amélioration de la stabilité des instances multiples ## [0.3.0] - 2024-11-15 ### Added - Healthchecks pour tous les services - Scripts de monitoring - Tests de santé des services - Documentation des healthchecks ### Changed - Amélioration de la surveillance des services - Optimisation des healthchecks ### Fixed - Correction des problèmes de healthchecks - Amélioration de la détection des problèmes ## [0.2.0] - 2024-11-10 ### Added - Service Blindbit - Intégration avec Bitcoin Core - Tests d'intégration Blindbit - Documentation du service Blindbit ### Changed - Amélioration de l'intégration des services - Optimisation de la communication inter-services ### Fixed - Correction des problèmes d'intégration - Amélioration de la stabilité des services ## [0.1.0] - 2024-11-05 ### Added - Infrastructure Docker de base - Service Bitcoin Core - Configuration de base - Tests de connectivité simples - Documentation initiale ### Changed - Configuration initiale des services - Premiers tests d'intégration ### Fixed - Problèmes de configuration initiale - Correction des problèmes de connectivité de base --- ## Types de Changements - **Added** : Nouvelles fonctionnalités - **Changed** : Changements dans les fonctionnalités existantes - **Deprecated** : Fonctionnalités qui seront supprimées - **Removed** : Fonctionnalités supprimées - **Fixed** : Corrections de bugs - **Security** : Améliorations de sécurité ## Contribution Pour contribuer au changelog, suivez le format existant et ajoutez vos changements dans la section appropriée. ## Liens - [Documentation](docs/) - [Guide de Contribution](CONTRIBUTING.md) - [Issues](https://git.4nkweb.com/4nk/4NK_node/issues) - [Releases](https://git.4nkweb.com/4nk/4NK_node/releases)