From 116383b64d513ccc9e1f27b93840af825bc1b60c Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 27 Aug 2025 11:52:12 +0200 Subject: [PATCH] chore(template): adapter .gitea depuis template et synchroniser docs pour sdk_relay --- .gitea/.gitea/ISSUE_TEMPLATE/bug_report.md | 97 ----- .../.gitea/ISSUE_TEMPLATE/feature_request.md | 156 -------- .gitea/.gitea/PULL_REQUEST_TEMPLATE.md | 180 --------- .gitea/.gitea/workflows/ci.yml | 345 ----------------- .gitea/ISSUE_TEMPLATE/bug_report.md | 85 ++++- .gitea/ISSUE_TEMPLATE/feature_request.md | 145 +++++++- .gitea/PULL_REQUEST_TEMPLATE.md | 187 +++++++++- .../workflows/LOCAL_OVERRIDES.yml | 0 .gitea/workflows/ci.yml | 330 ++++++++++++++++- .../{.gitea => }/workflows/template-sync.yml | 0 .gitea_template/ISSUE_TEMPLATE/bug_report.md | 99 ----- .../ISSUE_TEMPLATE/feature_request.md | 158 -------- .gitea_template/PULL_REQUEST_TEMPLATE.md | 183 --------- .gitea_template/workflows/LOCAL_OVERRIDES.yml | 14 - .gitea_template/workflows/ci.yml | 346 ------------------ .gitea_template/workflows/template-sync.yml | 39 -- docs/API.md | 1 + docs/ARCHITECTURE.md | 1 + docs/CONFIGURATION.md | 1 + docs/DEVELOPMENT.md | 1 + docs/EXEMPLES_PRATIQUES.md | 1 + docs/GITEA_SETUP.md | 1 + docs/INDEX.md | 1 + docs/INSTALLATION.md | 1 + docs/OPEN_SOURCE_CHECKLIST.md | 1 + docs/PERFORMANCE.md | 1 + docs/QUICK_REFERENCE.md | 1 + docs/RELEASE_PLAN.md | 1 + docs/ROADMAP.md | 1 + docs/SECURITY_AUDIT.md | 1 + docs/SSH_USATE.md | 1 + docs/TESTING.md | 1 + docs/TROUBLESHOOTING.md | 1 + docs/USAGE.md | 1 + docs/spec-technique.md | 1 + 35 files changed, 705 insertions(+), 1678 deletions(-) delete mode 100644 .gitea/.gitea/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .gitea/.gitea/ISSUE_TEMPLATE/feature_request.md delete mode 100644 .gitea/.gitea/PULL_REQUEST_TEMPLATE.md delete mode 100644 .gitea/.gitea/workflows/ci.yml rename .gitea/{.gitea => }/workflows/LOCAL_OVERRIDES.yml (100%) rename .gitea/{.gitea => }/workflows/template-sync.yml (100%) delete mode 100644 .gitea_template/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .gitea_template/ISSUE_TEMPLATE/feature_request.md delete mode 100644 .gitea_template/PULL_REQUEST_TEMPLATE.md delete mode 100644 .gitea_template/workflows/LOCAL_OVERRIDES.yml delete mode 100644 .gitea_template/workflows/ci.yml delete mode 100644 .gitea_template/workflows/template-sync.yml diff --git a/.gitea/.gitea/ISSUE_TEMPLATE/bug_report.md b/.gitea/.gitea/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index da4e36d..0000000 --- a/.gitea/.gitea/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -name: Bug Report -about: Signaler un bug pour nous aider à améliorer 4NK Node -title: '[BUG] ' -labels: ['bug', 'needs-triage'] -assignees: '' ---- - -## 🐛 Description du Bug - -Description claire et concise du problème. - -## 🔄 Étapes pour Reproduire - -1. Aller à '...' -2. Cliquer sur '...' -3. Faire défiler jusqu'à '...' -4. Voir l'erreur - -## ✅ Comportement Attendu - -Description de ce qui devrait se passer. - -## ❌ Comportement Actuel - -Description de ce qui se passe actuellement. - -## 📸 Capture d'Écran - -Si applicable, ajoutez une capture d'écran pour expliquer votre problème. - -## 💻 Informations Système - -- **OS** : [ex: Ubuntu 20.04, macOS 12.0, Windows 11] -- **Docker** : [ex: 20.10.0] -- **Docker Compose** : [ex: 2.0.0] -- **Version 4NK Node** : [ex: v1.0.0] -- **Architecture** : [ex: x86_64, ARM64] - -## 📋 Configuration - -### Services Actifs -```bash -docker ps -``` - -### Variables d'Environnement -```bash -# Bitcoin Core -BITCOIN_NETWORK=signet -BITCOIN_RPC_PORT=18443 - -# Blindbit -BLINDBIT_PORT=8000 - -# SDK Relay -SDK_RELAY_PORTS=8090-8095 -``` - -## 📝 Logs - -### Logs Pertinents -``` -Logs pertinents ici -``` - -### Logs d'Erreur -``` -Logs d'erreur ici -``` - -### Logs de Debug -``` -Logs de debug ici (si RUST_LOG=debug) -``` - -## 🔧 Tentatives de Résolution - -- [ ] Redémarrage des services -- [ ] Nettoyage des volumes Docker -- [ ] Vérification de la connectivité réseau -- [ ] Mise à jour des dépendances -- [ ] Vérification de la configuration - -## 📚 Contexte Supplémentaire - -Toute autre information pertinente sur le problème. - -## 🔗 Liens Utiles - -- [Documentation](docs/) -- [Guide de Dépannage](docs/TROUBLESHOOTING.md) -- [Issues Similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Abug) - ---- - -**Merci de votre contribution !** 🙏 diff --git a/.gitea/.gitea/ISSUE_TEMPLATE/feature_request.md b/.gitea/.gitea/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 6041f4a..0000000 --- a/.gitea/.gitea/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,156 +0,0 @@ ---- -name: Feature Request -about: Proposer une nouvelle fonctionnalité pour 4NK Node -title: '[FEATURE] ' -labels: ['enhancement', 'needs-triage'] -assignees: '' ---- - -## 🚀 Résumé - -Description claire et concise de la fonctionnalité souhaitée. - -## 💡 Motivation - -Pourquoi cette fonctionnalité est-elle nécessaire ? Quels problèmes résout-elle ? - -### Problèmes Actuels -- Problème 1 -- Problème 2 -- Problème 3 - -### Avantages de la Solution -- Avantage 1 -- Avantage 2 -- Avantage 3 - -## 🎯 Proposition - -Description détaillée de la fonctionnalité proposée. - -### Fonctionnalités Principales -- [ ] Fonctionnalité 1 -- [ ] Fonctionnalité 2 -- [ ] Fonctionnalité 3 - -### Interface Utilisateur -Description de l'interface utilisateur si applicable. - -### API Changes -Description des changements d'API si applicable. - -## 🔄 Alternatives Considérées - -Autres solutions envisagées et pourquoi elles n'ont pas été choisies. - -### Alternative 1 -- **Description** : ... -- **Pourquoi rejetée** : ... - -### Alternative 2 -- **Description** : ... -- **Pourquoi rejetée** : ... - -## 📊 Impact - -### Impact sur les Utilisateurs -- Impact positif 1 -- Impact positif 2 -- Impact négatif potentiel (si applicable) - -### Impact sur l'Architecture -- Changements nécessaires -- Compatibilité avec l'existant -- Performance - -### Impact sur la Maintenance -- Complexité ajoutée -- Tests nécessaires -- Documentation requise - -## 💻 Exemples d'Utilisation - -### Cas d'Usage 1 -```bash -# Exemple de commande ou configuration -``` - -### Cas d'Usage 2 -```python -# Exemple de code Python -``` - -### Cas d'Usage 3 -```javascript -// Exemple de code JavaScript -``` - -## 🧪 Tests - -### Tests Nécessaires -- [ ] Tests unitaires -- [ ] Tests d'intégration -- [ ] Tests de performance -- [ ] Tests de sécurité -- [ ] Tests de compatibilité - -### Scénarios de Test -- Scénario 1 -- Scénario 2 -- Scénario 3 - -## 📚 Documentation - -### Documentation Requise -- [ ] Guide d'utilisation -- [ ] Documentation API -- [ ] Exemples de code -- [ ] Guide de migration -- [ ] FAQ - -## 🔧 Implémentation - -### Étapes Proposées -1. **Phase 1** : [Description] -2. **Phase 2** : [Description] -3. **Phase 3** : [Description] - -### Estimation de Temps -- **Développement** : X jours/semaines -- **Tests** : X jours/semaines -- **Documentation** : X jours/semaines -- **Total** : X jours/semaines - -### Ressources Nécessaires -- Développeur(s) -- Testeur(s) -- Documentateur(s) -- Infrastructure - -## 🎯 Critères de Succès - -Comment mesurer le succès de cette fonctionnalité ? - -- [ ] Critère 1 -- [ ] Critère 2 -- [ ] Critère 3 - -## 🔗 Liens Utiles - -- [Documentation existante](docs/) -- [Issues similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement) -- [Roadmap](https://git.4nkweb.com/4nk/4NK_node/projects) -- [Discussions](https://git.4nkweb.com/4nk/4NK_node/issues) - -## 📋 Checklist - -- [ ] J'ai vérifié que cette fonctionnalité n'existe pas déjà -- [ ] J'ai lu la documentation existante -- [ ] J'ai vérifié les issues similaires -- [ ] J'ai fourni des exemples d'utilisation -- [ ] J'ai considéré l'impact sur l'existant -- [ ] J'ai proposé des tests - ---- - -**Merci de votre contribution à l'amélioration de 4NK Node !** 🌟 diff --git a/.gitea/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/.gitea/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 621d01a..0000000 --- a/.gitea/.gitea/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,180 +0,0 @@ -# Pull Request - 4NK Node - -## 📋 Description - -Description claire et concise des changements apportés. - -### Type de Changement -- [ ] 🐛 Bug fix -- [ ] ✨ Nouvelle fonctionnalité -- [ ] 📚 Documentation -- [ ] 🧪 Tests -- [ ] 🔧 Refactoring -- [ ] 🚀 Performance -- [ ] 🔒 Sécurité -- [ ] 🎨 Style/UI -- [ ] 🏗️ Architecture -- [ ] 📦 Build/CI - -### Composants Affectés -- [ ] Bitcoin Core -- [ ] Blindbit -- [ ] SDK Relay -- [ ] Tor -- [ ] Docker/Infrastructure -- [ ] Tests -- [ ] Documentation -- [ ] Scripts - -## 🔗 Issue(s) Liée(s) - -Fixes #(issue) -Relates to #(issue) - -## 🧪 Tests - -### Tests Exécutés -- [ ] Tests unitaires -- [ ] Tests d'intégration -- [ ] Tests de connectivité -- [ ] Tests externes -- [ ] Tests de performance - -### Commandes de Test -```bash -# Tests complets -./tests/run_all_tests.sh - -# Tests spécifiques -./tests/run_unit_tests.sh -./tests/run_integration_tests.sh -``` - -### Résultats des Tests -``` -Résultats des tests ici -``` - -## 📸 Captures d'Écran - -Si applicable, ajoutez des captures d'écran pour les changements visuels. - -## 🔧 Changements Techniques - -### Fichiers Modifiés -- `fichier1.rs` - Description des changements -- `fichier2.py` - Description des changements -- `docker-compose.yml` - Description des changements - -### Nouveaux Fichiers -- `nouveau_fichier.rs` - Description -- `nouveau_script.sh` - Description - -### Fichiers Supprimés -- `ancien_fichier.rs` - Raison de la suppression - -### Changements de Configuration -```yaml -# Exemple de changement de configuration -service: - new_option: value -``` - -## 📚 Documentation - -### Documentation Mise à Jour -- [ ] README.md -- [ ] docs/INSTALLATION.md -- [ ] docs/USAGE.md -- [ ] docs/API.md -- [ ] docs/ARCHITECTURE.md - -### Nouvelle Documentation -- [ ] Nouveau guide créé -- [ ] Exemples ajoutés -- [ ] API documentée - -## 🔍 Code Review Checklist - -### Code Quality -- [ ] Le code suit les standards du projet -- [ ] Les noms de variables/fonctions sont clairs -- [ ] Les commentaires sont appropriés -- [ ] Pas de code mort ou commenté -- [ ] Gestion d'erreurs appropriée - -### Performance -- [ ] Pas de régression de performance -- [ ] Optimisations appliquées si nécessaire -- [ ] Tests de performance ajoutés - -### Sécurité -- [ ] Pas de vulnérabilités introduites -- [ ] Validation des entrées utilisateur -- [ ] Gestion sécurisée des secrets - -### Tests -- [ ] Couverture de tests suffisante -- [ ] Tests pour les cas d'erreur -- [ ] Tests d'intégration si nécessaire - -### Documentation -- [ ] Code auto-documenté -- [ ] Documentation mise à jour -- [ ] Exemples fournis - -## 🚀 Déploiement - -### Impact sur le Déploiement -- [ ] Aucun impact -- [ ] Migration de données requise -- [ ] Changement de configuration -- [ ] Redémarrage des services - -### Étapes de Déploiement -```bash -# Étapes pour déployer les changements -``` - -## 📊 Métriques - -### Impact sur les Performances -- Temps de réponse : +/- X% -- Utilisation mémoire : +/- X% -- Utilisation CPU : +/- X% - -### Impact sur la Stabilité -- Taux d'erreur : +/- X% -- Disponibilité : +/- X% - -## 🔄 Compatibilité - -### Compatibilité Ascendante -- [ ] Compatible avec les versions précédentes -- [ ] Migration automatique -- [ ] Migration manuelle requise - -### Compatibilité Descendante -- [ ] Compatible avec les futures versions -- [ ] API stable -- [ ] Configuration stable - -## 🎯 Critères de Succès - -- [ ] Critère 1 -- [ ] Critère 2 -- [ ] Critère 3 - -## 📝 Notes Supplémentaires - -Informations supplémentaires importantes pour les reviewers. - -## 🔗 Liens Utiles - -- [Documentation](docs/) -- [Tests](tests/) -- [Issues liées](https://git.4nkweb.com/4nk/4NK_node/issues) - ---- - -**Merci pour votre contribution !** 🙏 diff --git a/.gitea/.gitea/workflows/ci.yml b/.gitea/.gitea/workflows/ci.yml deleted file mode 100644 index 5dd8de7..0000000 --- a/.gitea/.gitea/workflows/ci.yml +++ /dev/null @@ -1,345 +0,0 @@ -name: CI - 4NK Node - -on: - push: - branches: [ main, develop ] - pull_request: - branches: [ main, develop ] - -env: - RUST_VERSION: '1.70' - DOCKER_COMPOSE_VERSION: '2.20.0' - -jobs: - # Job de vérification du code - code-quality: - name: Code Quality - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Cache Rust dependencies - uses: actions/cache@v3 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - target - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - restore-keys: | - ${{ runner.os }}-cargo- - - - name: Run clippy - run: | - cd sdk_relay - cargo clippy --all-targets --all-features -- -D warnings - - - name: Run rustfmt - run: | - cd sdk_relay - cargo fmt --all -- --check - - - name: Check documentation - run: | - cd sdk_relay - cargo doc --no-deps - - - name: Check for TODO/FIXME - run: | - if grep -r "TODO\|FIXME" . --exclude-dir=.git --exclude-dir=target; then - echo "Found TODO/FIXME comments. Please address them." - exit 1 - fi - - # Job de tests unitaires - unit-tests: - name: Unit Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Cache Rust dependencies - uses: actions/cache@v3 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - target - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - restore-keys: | - ${{ runner.os }}-cargo- - - - name: Run unit tests - run: | - cd sdk_relay - cargo test --lib --bins - - - name: Run integration tests - run: | - cd sdk_relay - cargo test --tests - - # Job de tests d'intégration - integration-tests: - name: Integration Tests - runs-on: ubuntu-latest - - services: - docker: - image: docker:24.0.5 - options: >- - --health-cmd "docker info" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 2375:2375 - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build Docker images - run: | - docker build -t 4nk-node-bitcoin ./bitcoin - docker build -t 4nk-node-blindbit ./blindbit - docker build -t 4nk-node-sdk-relay -f ./sdk_relay/Dockerfile .. - - - name: Run integration tests - run: | - # Tests de connectivité de base - ./tests/run_connectivity_tests.sh || true - - # Tests d'intégration - ./tests/run_integration_tests.sh || true - - - name: Upload test results - uses: actions/upload-artifact@v3 - if: always() - with: - name: test-results - path: | - tests/logs/ - tests/reports/ - retention-days: 7 - - # Job de tests de sécurité - security-tests: - name: Security Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Run cargo audit - run: | - cd sdk_relay - cargo audit --deny warnings - - - name: Check for secrets - run: | - # Vérifier les secrets potentiels - if grep -r "password\|secret\|key\|token" . --exclude-dir=.git --exclude-dir=target --exclude=*.md; then - echo "Potential secrets found. Please review." - exit 1 - fi - - - name: Check file permissions - run: | - # Vérifier les permissions sensibles - find . -type f -perm /0111 -name "*.conf" -o -name "*.key" -o -name "*.pem" | while read file; do - if [[ $(stat -c %a "$file") != "600" ]]; then - echo "Warning: $file has insecure permissions" - fi - done - - # Job de build et test Docker - docker-build: - name: Docker Build & Test - runs-on: ubuntu-latest - - services: - docker: - image: docker:24.0.5 - options: >- - --health-cmd "docker info" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 2375:2375 - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and test Bitcoin Core - run: | - docker build -t 4nk-node-bitcoin:test ./bitcoin - docker run --rm 4nk-node-bitcoin:test bitcoin-cli --version - - - name: Build and test Blindbit - run: | - docker build -t 4nk-node-blindbit:test ./blindbit - docker run --rm 4nk-node-blindbit:test --version || true - - - name: Build and test SDK Relay - run: | - docker build -t 4nk-node-sdk-relay:test -f ./sdk_relay/Dockerfile .. - docker run --rm 4nk-node-sdk-relay:test --version || true - - - name: Test Docker Compose - run: | - docker-compose config - docker-compose build --no-cache - - # Job de tests de documentation - documentation-tests: - name: Documentation Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Check markdown links - run: | - # Vérification basique des liens markdown - find . -name "*.md" -exec grep -l "\[.*\](" {} \; | while read file; do - echo "Checking links in $file" - done - - - name: Check documentation structure - run: | - # Vérifier la présence des fichiers de documentation essentiels - required_files=( - "README.md" - "LICENSE" - "CONTRIBUTING.md" - "CHANGELOG.md" - "CODE_OF_CONDUCT.md" - "SECURITY.md" - "docs/INDEX.md" - "docs/INSTALLATION.md" - "docs/USAGE.md" - ) - - for file in "${required_files[@]}"; do - if [[ ! -f "$file" ]]; then - echo "Missing required documentation file: $file" - exit 1 - fi - done - - - name: Validate documentation - run: | - # Vérifier la cohérence de la documentation - if ! grep -q "4NK Node" README.md; then - echo "README.md should mention '4NK Node'" - exit 1 - fi - - # Job de release guard (cohérence release) - release-guard: - name: Release Guard - runs-on: ubuntu-latest - needs: [code-quality, unit-tests, documentation-tests] - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Ensure guard scripts are executable - run: | - chmod +x scripts/release/guard.sh || true - chmod +x scripts/checks/version_alignment.sh || true - - - name: Version alignment check - run: | - if [ -f scripts/checks/version_alignment.sh ]; then - ./scripts/checks/version_alignment.sh - else - echo "No version alignment script (ok)" - fi - - - name: Release guard (CI verify) - env: - RELEASE_TYPE: ci-verify - run: | - if [ -f scripts/release/guard.sh ]; then - ./scripts/release/guard.sh - else - echo "No guard script (ok)" - fi - - # Job de tests de performance - performance-tests: - name: Performance Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Run performance tests - run: | - cd sdk_relay - cargo test --release --test performance_tests || true - - - name: Check memory usage - run: | - # Tests de base de consommation mémoire - echo "Performance tests completed" - - # Job de notification - notify: - name: Notify - runs-on: ubuntu-latest - needs: [code-quality, unit-tests, integration-tests, security-tests, docker-build, documentation-tests] - if: always() - - steps: - - name: Notify success - if: needs.code-quality.result == 'success' && needs.unit-tests.result == 'success' && needs.integration-tests.result == 'success' && needs.security-tests.result == 'success' && needs.docker-build.result == 'success' && needs.documentation-tests.result == 'success' - run: | - echo "✅ All tests passed successfully!" - - - name: Notify failure - if: needs.code-quality.result == 'failure' || needs.unit-tests.result == 'failure' || needs.integration-tests.result == 'failure' || needs.security-tests.result == 'failure' || needs.docker-build.result == 'failure' || needs.documentation-tests.result == 'failure' - run: | - echo "❌ Some tests failed!" - exit 1 diff --git a/.gitea/ISSUE_TEMPLATE/bug_report.md b/.gitea/ISSUE_TEMPLATE/bug_report.md index 780167a..da4e36d 100644 --- a/.gitea/ISSUE_TEMPLATE/bug_report.md +++ b/.gitea/ISSUE_TEMPLATE/bug_report.md @@ -1,6 +1,6 @@ --- name: Bug Report -about: Signaler un bug pour améliorer sdk_relay +about: Signaler un bug pour nous aider à améliorer 4NK Node title: '[BUG] ' labels: ['bug', 'needs-triage'] assignees: '' @@ -12,33 +12,86 @@ Description claire et concise du problème. ## 🔄 Étapes pour Reproduire -1. ... -2. ... -3. ... +1. Aller à '...' +2. Cliquer sur '...' +3. Faire défiler jusqu'à '...' +4. Voir l'erreur ## ✅ Comportement Attendu -... +Description de ce qui devrait se passer. ## ❌ Comportement Actuel -... +Description de ce qui se passe actuellement. + +## 📸 Capture d'Écran + +Si applicable, ajoutez une capture d'écran pour expliquer votre problème. ## 💻 Informations Système -- OS: ... -- Rust: ... -- Version sdk_relay: ... + +- **OS** : [ex: Ubuntu 20.04, macOS 12.0, Windows 11] +- **Docker** : [ex: 20.10.0] +- **Docker Compose** : [ex: 2.0.0] +- **Version 4NK Node** : [ex: v1.0.0] +- **Architecture** : [ex: x86_64, ARM64] + +## 📋 Configuration + +### Services Actifs +```bash +docker ps +``` + +### Variables d'Environnement +```bash +# Bitcoin Core +BITCOIN_NETWORK=signet +BITCOIN_RPC_PORT=18443 + +# Blindbit +BLINDBIT_PORT=8000 + +# SDK Relay +SDK_RELAY_PORTS=8090-8095 +``` ## 📝 Logs + +### Logs Pertinents ``` Logs pertinents ici ``` -## 🔧 Tentatives de Résolution -- [ ] Clippy/fmt OK -- [ ] Tests OK -- [ ] Rebuild +### Logs d'Erreur +``` +Logs d'erreur ici +``` -## 📚 Liens -- [Documentation](../docs) -- [Issues similaires](https://git.4nkweb.com/4nk/sdk_relay/issues?q=is%3Aissue+is%3Aopen+label%3Abug) +### Logs de Debug +``` +Logs de debug ici (si RUST_LOG=debug) +``` + +## 🔧 Tentatives de Résolution + +- [ ] Redémarrage des services +- [ ] Nettoyage des volumes Docker +- [ ] Vérification de la connectivité réseau +- [ ] Mise à jour des dépendances +- [ ] Vérification de la configuration + +## 📚 Contexte Supplémentaire + +Toute autre information pertinente sur le problème. + +## 🔗 Liens Utiles + +- [Documentation](docs/) +- [Guide de Dépannage](docs/TROUBLESHOOTING.md) +- [Issues Similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Abug) + +--- + +**Merci de votre contribution !** 🙏 diff --git a/.gitea/ISSUE_TEMPLATE/feature_request.md b/.gitea/ISSUE_TEMPLATE/feature_request.md index 8dc49a9..6041f4a 100644 --- a/.gitea/ISSUE_TEMPLATE/feature_request.md +++ b/.gitea/ISSUE_TEMPLATE/feature_request.md @@ -1,27 +1,156 @@ --- name: Feature Request -about: Proposer une nouvelle fonctionnalité pour sdk_relay +about: Proposer une nouvelle fonctionnalité pour 4NK Node title: '[FEATURE] ' labels: ['enhancement', 'needs-triage'] assignees: '' --- ## 🚀 Résumé -... + +Description claire et concise de la fonctionnalité souhaitée. ## 💡 Motivation -... + +Pourquoi cette fonctionnalité est-elle nécessaire ? Quels problèmes résout-elle ? + +### Problèmes Actuels +- Problème 1 +- Problème 2 +- Problème 3 + +### Avantages de la Solution +- Avantage 1 +- Avantage 2 +- Avantage 3 ## 🎯 Proposition + +Description détaillée de la fonctionnalité proposée. + +### Fonctionnalités Principales - [ ] Fonctionnalité 1 - [ ] Fonctionnalité 2 +- [ ] Fonctionnalité 3 + +### Interface Utilisateur +Description de l'interface utilisateur si applicable. + +### API Changes +Description des changements d'API si applicable. + +## 🔄 Alternatives Considérées + +Autres solutions envisagées et pourquoi elles n'ont pas été choisies. + +### Alternative 1 +- **Description** : ... +- **Pourquoi rejetée** : ... + +### Alternative 2 +- **Description** : ... +- **Pourquoi rejetée** : ... + +## 📊 Impact + +### Impact sur les Utilisateurs +- Impact positif 1 +- Impact positif 2 +- Impact négatif potentiel (si applicable) + +### Impact sur l'Architecture +- Changements nécessaires +- Compatibilité avec l'existant +- Performance + +### Impact sur la Maintenance +- Complexité ajoutée +- Tests nécessaires +- Documentation requise + +## 💻 Exemples d'Utilisation + +### Cas d'Usage 1 +```bash +# Exemple de commande ou configuration +``` + +### Cas d'Usage 2 +```python +# Exemple de code Python +``` + +### Cas d'Usage 3 +```javascript +// Exemple de code JavaScript +``` ## 🧪 Tests -- [ ] Unitaires -- [ ] Intégration + +### Tests Nécessaires +- [ ] Tests unitaires +- [ ] Tests d'intégration +- [ ] Tests de performance +- [ ] Tests de sécurité +- [ ] Tests de compatibilité + +### Scénarios de Test +- Scénario 1 +- Scénario 2 +- Scénario 3 ## 📚 Documentation -- [ ] API/README mis à jour -## 🔗 Liens -- [Issues similaires](https://git.4nkweb.com/4nk/sdk_relay/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement) +### Documentation Requise +- [ ] Guide d'utilisation +- [ ] Documentation API +- [ ] Exemples de code +- [ ] Guide de migration +- [ ] FAQ + +## 🔧 Implémentation + +### Étapes Proposées +1. **Phase 1** : [Description] +2. **Phase 2** : [Description] +3. **Phase 3** : [Description] + +### Estimation de Temps +- **Développement** : X jours/semaines +- **Tests** : X jours/semaines +- **Documentation** : X jours/semaines +- **Total** : X jours/semaines + +### Ressources Nécessaires +- Développeur(s) +- Testeur(s) +- Documentateur(s) +- Infrastructure + +## 🎯 Critères de Succès + +Comment mesurer le succès de cette fonctionnalité ? + +- [ ] Critère 1 +- [ ] Critère 2 +- [ ] Critère 3 + +## 🔗 Liens Utiles + +- [Documentation existante](docs/) +- [Issues similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement) +- [Roadmap](https://git.4nkweb.com/4nk/4NK_node/projects) +- [Discussions](https://git.4nkweb.com/4nk/4NK_node/issues) + +## 📋 Checklist + +- [ ] J'ai vérifié que cette fonctionnalité n'existe pas déjà +- [ ] J'ai lu la documentation existante +- [ ] J'ai vérifié les issues similaires +- [ ] J'ai fourni des exemples d'utilisation +- [ ] J'ai considéré l'impact sur l'existant +- [ ] J'ai proposé des tests + +--- + +**Merci de votre contribution à l'amélioration de 4NK Node !** 🌟 diff --git a/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/PULL_REQUEST_TEMPLATE.md index 12ec984..621d01a 100644 --- a/.gitea/PULL_REQUEST_TEMPLATE.md +++ b/.gitea/PULL_REQUEST_TEMPLATE.md @@ -1,31 +1,180 @@ -# Pull Request - sdk_relay +# Pull Request - 4NK Node ## 📋 Description -Résumé clair des changements. -### Type -- [ ] Bug fix -- [ ] Feature -- [ ] Docs +Description claire et concise des changements apportés. + +### Type de Changement +- [ ] 🐛 Bug fix +- [ ] ✨ Nouvelle fonctionnalité +- [ ] 📚 Documentation +- [ ] 🧪 Tests +- [ ] 🔧 Refactoring +- [ ] 🚀 Performance +- [ ] 🔒 Sécurité +- [ ] 🎨 Style/UI +- [ ] 🏗️ Architecture +- [ ] 📦 Build/CI + +### Composants Affectés +- [ ] Bitcoin Core +- [ ] Blindbit +- [ ] SDK Relay +- [ ] Tor +- [ ] Docker/Infrastructure - [ ] Tests -- [ ] Refactor -- [ ] CI +- [ ] Documentation +- [ ] Scripts + +## 🔗 Issue(s) Liée(s) -## 🔗 Issues Fixes #(issue) +Relates to #(issue) ## 🧪 Tests + +### Tests Exécutés +- [ ] Tests unitaires +- [ ] Tests d'intégration +- [ ] Tests de connectivité +- [ ] Tests externes +- [ ] Tests de performance + +### Commandes de Test ```bash -cargo test --all -cargo clippy -- -D warnings -cargo fmt -- --check +# Tests complets +./tests/run_all_tests.sh + +# Tests spécifiques +./tests/run_unit_tests.sh +./tests/run_integration_tests.sh ``` -## 📚 Docs -- [ ] README/docs mis à jour +### Résultats des Tests +``` +Résultats des tests ici +``` -## 🔍 Checklist -- [ ] Lint OK -- [ ] Tests OK -- [ ] Pas de régression -- [ ] Sécurité considérée +## 📸 Captures d'Écran + +Si applicable, ajoutez des captures d'écran pour les changements visuels. + +## 🔧 Changements Techniques + +### Fichiers Modifiés +- `fichier1.rs` - Description des changements +- `fichier2.py` - Description des changements +- `docker-compose.yml` - Description des changements + +### Nouveaux Fichiers +- `nouveau_fichier.rs` - Description +- `nouveau_script.sh` - Description + +### Fichiers Supprimés +- `ancien_fichier.rs` - Raison de la suppression + +### Changements de Configuration +```yaml +# Exemple de changement de configuration +service: + new_option: value +``` + +## 📚 Documentation + +### Documentation Mise à Jour +- [ ] README.md +- [ ] docs/INSTALLATION.md +- [ ] docs/USAGE.md +- [ ] docs/API.md +- [ ] docs/ARCHITECTURE.md + +### Nouvelle Documentation +- [ ] Nouveau guide créé +- [ ] Exemples ajoutés +- [ ] API documentée + +## 🔍 Code Review Checklist + +### Code Quality +- [ ] Le code suit les standards du projet +- [ ] Les noms de variables/fonctions sont clairs +- [ ] Les commentaires sont appropriés +- [ ] Pas de code mort ou commenté +- [ ] Gestion d'erreurs appropriée + +### Performance +- [ ] Pas de régression de performance +- [ ] Optimisations appliquées si nécessaire +- [ ] Tests de performance ajoutés + +### Sécurité +- [ ] Pas de vulnérabilités introduites +- [ ] Validation des entrées utilisateur +- [ ] Gestion sécurisée des secrets + +### Tests +- [ ] Couverture de tests suffisante +- [ ] Tests pour les cas d'erreur +- [ ] Tests d'intégration si nécessaire + +### Documentation +- [ ] Code auto-documenté +- [ ] Documentation mise à jour +- [ ] Exemples fournis + +## 🚀 Déploiement + +### Impact sur le Déploiement +- [ ] Aucun impact +- [ ] Migration de données requise +- [ ] Changement de configuration +- [ ] Redémarrage des services + +### Étapes de Déploiement +```bash +# Étapes pour déployer les changements +``` + +## 📊 Métriques + +### Impact sur les Performances +- Temps de réponse : +/- X% +- Utilisation mémoire : +/- X% +- Utilisation CPU : +/- X% + +### Impact sur la Stabilité +- Taux d'erreur : +/- X% +- Disponibilité : +/- X% + +## 🔄 Compatibilité + +### Compatibilité Ascendante +- [ ] Compatible avec les versions précédentes +- [ ] Migration automatique +- [ ] Migration manuelle requise + +### Compatibilité Descendante +- [ ] Compatible avec les futures versions +- [ ] API stable +- [ ] Configuration stable + +## 🎯 Critères de Succès + +- [ ] Critère 1 +- [ ] Critère 2 +- [ ] Critère 3 + +## 📝 Notes Supplémentaires + +Informations supplémentaires importantes pour les reviewers. + +## 🔗 Liens Utiles + +- [Documentation](docs/) +- [Tests](tests/) +- [Issues liées](https://git.4nkweb.com/4nk/4NK_node/issues) + +--- + +**Merci pour votre contribution !** 🙏 diff --git a/.gitea/.gitea/workflows/LOCAL_OVERRIDES.yml b/.gitea/workflows/LOCAL_OVERRIDES.yml similarity index 100% rename from .gitea/.gitea/workflows/LOCAL_OVERRIDES.yml rename to .gitea/workflows/LOCAL_OVERRIDES.yml diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 1dcc853..5dd8de7 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -1,25 +1,32 @@ -name: CI - sdk_relay +name: CI - 4NK Node on: push: - branches: [ main, develop, docker-support ] + branches: [ main, develop ] pull_request: - branches: [ main, develop, docker-support ] + branches: [ main, develop ] env: - RUST_VERSION: 'stable' + RUST_VERSION: '1.70' + DOCKER_COMPOSE_VERSION: '2.20.0' jobs: - build-test: + # Job de vérification du code + code-quality: + name: Code Quality runs-on: ubuntu-latest + steps: - - uses: actions/checkout@v3 + - name: Checkout code + uses: actions/checkout@v3 + - name: Setup Rust uses: actions-rs/toolchain@v1 with: toolchain: ${{ env.RUST_VERSION }} override: true - - name: Cache cargo + + - name: Cache Rust dependencies uses: actions/cache@v3 with: path: | @@ -29,23 +36,310 @@ jobs: key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} restore-keys: | ${{ runner.os }}-cargo- - - name: Fmt - run: cargo fmt --all -- --check - - name: Clippy - run: cargo clippy --all-targets -- -D warnings - - name: Tests - run: cargo test --all - security: + - name: Run clippy + run: | + cd sdk_relay + cargo clippy --all-targets --all-features -- -D warnings + + - name: Run rustfmt + run: | + cd sdk_relay + cargo fmt --all -- --check + + - name: Check documentation + run: | + cd sdk_relay + cargo doc --no-deps + + - name: Check for TODO/FIXME + run: | + if grep -r "TODO\|FIXME" . --exclude-dir=.git --exclude-dir=target; then + echo "Found TODO/FIXME comments. Please address them." + exit 1 + fi + + # Job de tests unitaires + unit-tests: + name: Unit Tests runs-on: ubuntu-latest + steps: - - uses: actions/checkout@v3 + - name: Checkout code + uses: actions/checkout@v3 + - name: Setup Rust uses: actions-rs/toolchain@v1 with: toolchain: ${{ env.RUST_VERSION }} override: true - - name: Cargo audit + + - name: Cache Rust dependencies + uses: actions/cache@v3 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + restore-keys: | + ${{ runner.os }}-cargo- + + - name: Run unit tests run: | - cargo install cargo-audit || true - cargo audit --deny warnings || true + cd sdk_relay + cargo test --lib --bins + + - name: Run integration tests + run: | + cd sdk_relay + cargo test --tests + + # Job de tests d'intégration + integration-tests: + name: Integration Tests + runs-on: ubuntu-latest + + services: + docker: + image: docker:24.0.5 + options: >- + --health-cmd "docker info" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ports: + - 2375:2375 + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Setup Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Build Docker images + run: | + docker build -t 4nk-node-bitcoin ./bitcoin + docker build -t 4nk-node-blindbit ./blindbit + docker build -t 4nk-node-sdk-relay -f ./sdk_relay/Dockerfile .. + + - name: Run integration tests + run: | + # Tests de connectivité de base + ./tests/run_connectivity_tests.sh || true + + # Tests d'intégration + ./tests/run_integration_tests.sh || true + + - name: Upload test results + uses: actions/upload-artifact@v3 + if: always() + with: + name: test-results + path: | + tests/logs/ + tests/reports/ + retention-days: 7 + + # Job de tests de sécurité + security-tests: + name: Security Tests + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Setup Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ env.RUST_VERSION }} + override: true + + - name: Run cargo audit + run: | + cd sdk_relay + cargo audit --deny warnings + + - name: Check for secrets + run: | + # Vérifier les secrets potentiels + if grep -r "password\|secret\|key\|token" . --exclude-dir=.git --exclude-dir=target --exclude=*.md; then + echo "Potential secrets found. Please review." + exit 1 + fi + + - name: Check file permissions + run: | + # Vérifier les permissions sensibles + find . -type f -perm /0111 -name "*.conf" -o -name "*.key" -o -name "*.pem" | while read file; do + if [[ $(stat -c %a "$file") != "600" ]]; then + echo "Warning: $file has insecure permissions" + fi + done + + # Job de build et test Docker + docker-build: + name: Docker Build & Test + runs-on: ubuntu-latest + + services: + docker: + image: docker:24.0.5 + options: >- + --health-cmd "docker info" + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ports: + - 2375:2375 + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Setup Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Build and test Bitcoin Core + run: | + docker build -t 4nk-node-bitcoin:test ./bitcoin + docker run --rm 4nk-node-bitcoin:test bitcoin-cli --version + + - name: Build and test Blindbit + run: | + docker build -t 4nk-node-blindbit:test ./blindbit + docker run --rm 4nk-node-blindbit:test --version || true + + - name: Build and test SDK Relay + run: | + docker build -t 4nk-node-sdk-relay:test -f ./sdk_relay/Dockerfile .. + docker run --rm 4nk-node-sdk-relay:test --version || true + + - name: Test Docker Compose + run: | + docker-compose config + docker-compose build --no-cache + + # Job de tests de documentation + documentation-tests: + name: Documentation Tests + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Check markdown links + run: | + # Vérification basique des liens markdown + find . -name "*.md" -exec grep -l "\[.*\](" {} \; | while read file; do + echo "Checking links in $file" + done + + - name: Check documentation structure + run: | + # Vérifier la présence des fichiers de documentation essentiels + required_files=( + "README.md" + "LICENSE" + "CONTRIBUTING.md" + "CHANGELOG.md" + "CODE_OF_CONDUCT.md" + "SECURITY.md" + "docs/INDEX.md" + "docs/INSTALLATION.md" + "docs/USAGE.md" + ) + + for file in "${required_files[@]}"; do + if [[ ! -f "$file" ]]; then + echo "Missing required documentation file: $file" + exit 1 + fi + done + + - name: Validate documentation + run: | + # Vérifier la cohérence de la documentation + if ! grep -q "4NK Node" README.md; then + echo "README.md should mention '4NK Node'" + exit 1 + fi + + # Job de release guard (cohérence release) + release-guard: + name: Release Guard + runs-on: ubuntu-latest + needs: [code-quality, unit-tests, documentation-tests] + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Ensure guard scripts are executable + run: | + chmod +x scripts/release/guard.sh || true + chmod +x scripts/checks/version_alignment.sh || true + + - name: Version alignment check + run: | + if [ -f scripts/checks/version_alignment.sh ]; then + ./scripts/checks/version_alignment.sh + else + echo "No version alignment script (ok)" + fi + + - name: Release guard (CI verify) + env: + RELEASE_TYPE: ci-verify + run: | + if [ -f scripts/release/guard.sh ]; then + ./scripts/release/guard.sh + else + echo "No guard script (ok)" + fi + + # Job de tests de performance + performance-tests: + name: Performance Tests + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Setup Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ env.RUST_VERSION }} + override: true + + - name: Run performance tests + run: | + cd sdk_relay + cargo test --release --test performance_tests || true + + - name: Check memory usage + run: | + # Tests de base de consommation mémoire + echo "Performance tests completed" + + # Job de notification + notify: + name: Notify + runs-on: ubuntu-latest + needs: [code-quality, unit-tests, integration-tests, security-tests, docker-build, documentation-tests] + if: always() + + steps: + - name: Notify success + if: needs.code-quality.result == 'success' && needs.unit-tests.result == 'success' && needs.integration-tests.result == 'success' && needs.security-tests.result == 'success' && needs.docker-build.result == 'success' && needs.documentation-tests.result == 'success' + run: | + echo "✅ All tests passed successfully!" + + - name: Notify failure + if: needs.code-quality.result == 'failure' || needs.unit-tests.result == 'failure' || needs.integration-tests.result == 'failure' || needs.security-tests.result == 'failure' || needs.docker-build.result == 'failure' || needs.documentation-tests.result == 'failure' + run: | + echo "❌ Some tests failed!" + exit 1 diff --git a/.gitea/.gitea/workflows/template-sync.yml b/.gitea/workflows/template-sync.yml similarity index 100% rename from .gitea/.gitea/workflows/template-sync.yml rename to .gitea/workflows/template-sync.yml diff --git a/.gitea_template/ISSUE_TEMPLATE/bug_report.md b/.gitea_template/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 0b144dc..0000000 --- a/.gitea_template/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,99 +0,0 @@ ---- -name: Bug Report -about: Signaler un bug pour nous aider à améliorer 4NK Node -title: '[BUG] ' -labels: ['bug', 'needs-triage'] -assignees: '' ---- - -> Ce fichier est un modèle (template). Adaptez les champs à votre projet dérivé. - -## 🐛 Description du Bug - -Description claire et concise du problème. - -## 🔄 Étapes pour Reproduire - -1. Aller à '...' -2. Cliquer sur '...' -3. Faire défiler jusqu'à '...' -4. Voir l'erreur - -## ✅ Comportement Attendu - -Description de ce qui devrait se passer. - -## ❌ Comportement Actuel - -Description de ce qui se passe actuellement. - -## 📸 Capture d'Écran - -Si applicable, ajoutez une capture d'écran pour expliquer votre problème. - -## 💻 Informations Système - -- **OS** : [ex: Ubuntu 20.04, macOS 12.0, Windows 11] -- **Docker** : [ex: 20.10.0] -- **Docker Compose** : [ex: 2.0.0] -- **Version 4NK Node** : [ex: v1.0.0] -- **Architecture** : [ex: x86_64, ARM64] - -## 📋 Configuration - -### Services Actifs -```bash -docker ps -``` - -### Variables d'Environnement -```bash -# Bitcoin Core -BITCOIN_NETWORK=signet -BITCOIN_RPC_PORT=18443 - -# Blindbit -BLINDBIT_PORT=8000 - -# SDK Relay -SDK_RELAY_PORTS=8090-8095 -``` - -## 📝 Logs - -### Logs Pertinents -``` -Logs pertinents ici -``` - -### Logs d'Erreur -``` -Logs d'erreur ici -``` - -### Logs de Debug -``` -Logs de debug ici (si RUST_LOG=debug) -``` - -## 🔧 Tentatives de Résolution - -- [ ] Redémarrage des services -- [ ] Nettoyage des volumes Docker -- [ ] Vérification de la connectivité réseau -- [ ] Mise à jour des dépendances -- [ ] Vérification de la configuration - -## 📚 Contexte Supplémentaire - -Toute autre information pertinente sur le problème. - -## 🔗 Liens Utiles - -- [Documentation](docs/) -- [Guide de Dépannage](docs/TROUBLESHOOTING.md) -- [Issues Similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Abug) - ---- - -**Merci de votre contribution !** 🙏 diff --git a/.gitea_template/ISSUE_TEMPLATE/feature_request.md b/.gitea_template/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 4b8c506..0000000 --- a/.gitea_template/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,158 +0,0 @@ ---- -name: Feature Request -about: Proposer une nouvelle fonctionnalité pour 4NK Node -title: '[FEATURE] ' -labels: ['enhancement', 'needs-triage'] -assignees: '' ---- - -> Ce fichier est un modèle (template). Adaptez les champs à votre projet dérivé. - -## 🚀 Résumé - -Description claire et concise de la fonctionnalité souhaitée. - -## 💡 Motivation - -Pourquoi cette fonctionnalité est-elle nécessaire ? Quels problèmes résout-elle ? - -### Problèmes Actuels -- Problème 1 -- Problème 2 -- Problème 3 - -### Avantages de la Solution -- Avantage 1 -- Avantage 2 -- Avantage 3 - -## 🎯 Proposition - -Description détaillée de la fonctionnalité proposée. - -### Fonctionnalités Principales -- [ ] Fonctionnalité 1 -- [ ] Fonctionnalité 2 -- [ ] Fonctionnalité 3 - -### Interface Utilisateur -Description de l'interface utilisateur si applicable. - -### API Changes -Description des changements d'API si applicable. - -## 🔄 Alternatives Considérées - -Autres solutions envisagées et pourquoi elles n'ont pas été choisies. - -### Alternative 1 -- **Description** : ... -- **Pourquoi rejetée** : ... - -### Alternative 2 -- **Description** : ... -- **Pourquoi rejetée** : ... - -## 📊 Impact - -### Impact sur les Utilisateurs -- Impact positif 1 -- Impact positif 2 -- Impact négatif potentiel (si applicable) - -### Impact sur l'Architecture -- Changements nécessaires -- Compatibilité avec l'existant -- Performance - -### Impact sur la Maintenance -- Complexité ajoutée -- Tests nécessaires -- Documentation requise - -## 💻 Exemples d'Utilisation - -### Cas d'Usage 1 -```bash -# Exemple de commande ou configuration -``` - -### Cas d'Usage 2 -```python -# Exemple de code Python -``` - -### Cas d'Usage 3 -```javascript -// Exemple de code JavaScript -``` - -## 🧪 Tests - -### Tests Nécessaires -- [ ] Tests unitaires -- [ ] Tests d'intégration -- [ ] Tests de performance -- [ ] Tests de sécurité -- [ ] Tests de compatibilité - -### Scénarios de Test -- Scénario 1 -- Scénario 2 -- Scénario 3 - -## 📚 Documentation - -### Documentation Requise -- [ ] Guide d'utilisation -- [ ] Documentation API -- [ ] Exemples de code -- [ ] Guide de migration -- [ ] FAQ - -## 🔧 Implémentation - -### Étapes Proposées -1. **Phase 1** : [Description] -2. **Phase 2** : [Description] -3. **Phase 3** : [Description] - -### Estimation de Temps -- **Développement** : X jours/semaines -- **Tests** : X jours/semaines -- **Documentation** : X jours/semaines -- **Total** : X jours/semaines - -### Ressources Nécessaires -- Développeur(s) -- Testeur(s) -- Documentateur(s) -- Infrastructure - -## 🎯 Critères de Succès - -Comment mesurer le succès de cette fonctionnalité ? - -- [ ] Critère 1 -- [ ] Critère 2 -- [ ] Critère 3 - -## 🔗 Liens Utiles - -- [Documentation existante](docs/) -- [Issues similaires](https://git.4nkweb.com/4nk/4NK_node/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement) -- [Roadmap](https://git.4nkweb.com/4nk/4NK_node/projects) -- [Discussions](https://git.4nkweb.com/4nk/4NK_node/issues) - -## 📋 Checklist - -- [ ] J'ai vérifié que cette fonctionnalité n'existe pas déjà -- [ ] J'ai lu la documentation existante -- [ ] J'ai vérifié les issues similaires -- [ ] J'ai fourni des exemples d'utilisation -- [ ] J'ai considéré l'impact sur l'existant -- [ ] J'ai proposé des tests - ---- - -**Merci de votre contribution à l'amélioration de 4NK Node !** 🌟 diff --git a/.gitea_template/PULL_REQUEST_TEMPLATE.md b/.gitea_template/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index a406182..0000000 --- a/.gitea_template/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,183 +0,0 @@ -# Pull Request - 4NK Node - -> Ce fichier est un modèle PR. Adaptez les sections à votre projet dérivé. - -## 📋 Description - -Description claire et concise des changements apportés. - -### Type de Changement -- [ ] 🐛 Bug fix -- [ ] ✨ Nouvelle fonctionnalité -- [ ] 📚 Documentation -- [ ] 🧪 Tests -- [ ] 🔧 Refactoring -- [ ] 🚀 Performance -- [ ] 🔒 Sécurité -- [ ] 🎨 Style/UI -- [ ] 🏗️ Architecture -- [ ] 📦 Build/CI - -### Composants Affectés -- [ ] Bitcoin Core -- [ ] Blindbit -- [ ] SDK Relay -- [ ] Tor -- [ ] Docker/Infrastructure -- [ ] Tests -- [ ] Documentation -- [ ] Scripts - -## 🔗 Issue(s) Liée(s) - -Fixes #(issue) -Relates to #(issue) - -## 🧪 Tests - -### Tests Exécutés -- [ ] Tests unitaires -- [ ] Tests d'intégration -- [ ] Tests de connectivité -- [ ] Tests externes -- [ ] Tests de performance -- [ ] Release Guard local (`RELEASE_TYPE=ci-verify scripts/release/guard.sh`) - -### Commandes de Test -```bash -# Tests complets -./tests/run_all_tests.sh - -# Tests spécifiques -./tests/run_unit_tests.sh -./tests/run_integration_tests.sh -``` - -### Résultats des Tests -``` -Résultats des tests ici -``` - -## 📸 Captures d'Écran - -Si applicable, ajoutez des captures d'écran pour les changements visuels. - -## 🔧 Changements Techniques - -### Fichiers Modifiés -- `fichier1.rs` - Description des changements -- `fichier2.py` - Description des changements -- `docker-compose.yml` - Description des changements - -### Nouveaux Fichiers -- `nouveau_fichier.rs` - Description -- `nouveau_script.sh` - Description - -### Fichiers Supprimés -- `ancien_fichier.rs` - Raison de la suppression - -### Changements de Configuration -```yaml -# Exemple de changement de configuration -service: - new_option: value -``` - -## 📚 Documentation - -### Documentation Mise à Jour -- [ ] README.md -- [ ] docs/INSTALLATION.md -- [ ] docs/USAGE.md -- [ ] docs/API.md -- [ ] docs/ARCHITECTURE.md - -### Nouvelle Documentation -- [ ] Nouveau guide créé -- [ ] Exemples ajoutés -- [ ] API documentée - -## 🔍 Code Review Checklist - -### Code Quality -- [ ] Le code suit les standards du projet -- [ ] Les noms de variables/fonctions sont clairs -- [ ] Les commentaires sont appropriés -- [ ] Pas de code mort ou commenté -- [ ] Gestion d'erreurs appropriée - -### Performance -- [ ] Pas de régression de performance -- [ ] Optimisations appliquées si nécessaire -- [ ] Tests de performance ajoutés - -### Sécurité -- [ ] Pas de vulnérabilités introduites -- [ ] Validation des entrées utilisateur -- [ ] Gestion sécurisée des secrets - -### Tests -- [ ] Couverture de tests suffisante -- [ ] Tests pour les cas d'erreur -- [ ] Tests d'intégration si nécessaire - -### Documentation -- [ ] Code auto-documenté -- [ ] Documentation mise à jour -- [ ] Exemples fournis - -## 🚀 Déploiement - -### Impact sur le Déploiement -- [ ] Aucun impact -- [ ] Migration de données requise -- [ ] Changement de configuration -- [ ] Redémarrage des services - -### Étapes de Déploiement -```bash -# Étapes pour déployer les changements -``` - -## 📊 Métriques - -### Impact sur les Performances -- Temps de réponse : +/- X% -- Utilisation mémoire : +/- X% -- Utilisation CPU : +/- X% - -### Impact sur la Stabilité -- Taux d'erreur : +/- X% -- Disponibilité : +/- X% - -## 🔄 Compatibilité - -### Compatibilité Ascendante -- [ ] Compatible avec les versions précédentes -- [ ] Migration automatique -- [ ] Migration manuelle requise - -### Compatibilité Descendante -- [ ] Compatible avec les futures versions -- [ ] API stable -- [ ] Configuration stable - -## 🎯 Critères de Succès - -- [ ] Critère 1 -- [ ] Critère 2 -- [ ] Critère 3 - -## 📝 Notes Supplémentaires - -Informations supplémentaires importantes pour les reviewers. - -## 🔗 Liens Utiles - -- [Documentation](docs/) -- [Tests](tests/) -- [Issues liées](https://git.4nkweb.com/4nk/4NK_node/issues) - ---- - -**Merci pour votre contribution !** 🙏 diff --git a/.gitea_template/workflows/LOCAL_OVERRIDES.yml b/.gitea_template/workflows/LOCAL_OVERRIDES.yml deleted file mode 100644 index 789bc91..0000000 --- a/.gitea_template/workflows/LOCAL_OVERRIDES.yml +++ /dev/null @@ -1,14 +0,0 @@ -# LOCAL_OVERRIDES.yml — dérogations locales contrôlées (fichier modèle) -overrides: - - path: ".gitea/workflows/ci.yml" - reason: "spécificité d’environnement" - owner: "@maintainer_handle" - expires: "2025-12-31" - - path: "scripts/scripts/auto-ssh-push.sh" - reason: "flux particulier temporaire" - owner: "@maintainer_handle" - expires: "2025-10-01" -policy: - allow_only_listed_paths: true - require_expiry: true - audit_in_ci: true diff --git a/.gitea_template/workflows/ci.yml b/.gitea_template/workflows/ci.yml deleted file mode 100644 index 058515a..0000000 --- a/.gitea_template/workflows/ci.yml +++ /dev/null @@ -1,346 +0,0 @@ -# Template CI - 4NK Node (ce fichier est un modèle, adaptez selon votre projet) -name: CI - 4NK Node - -on: - push: - branches: [ main, develop ] - pull_request: - branches: [ main, develop ] - -env: - RUST_VERSION: '1.70' - DOCKER_COMPOSE_VERSION: '2.20.0' - -jobs: - # Job de vérification du code - code-quality: - name: Code Quality - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Cache Rust dependencies - uses: actions/cache@v3 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - target - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - restore-keys: | - ${{ runner.os }}-cargo- - - - name: Run clippy - run: | - cd sdk_relay - cargo clippy --all-targets --all-features -- -D warnings - - - name: Run rustfmt - run: | - cd sdk_relay - cargo fmt --all -- --check - - - name: Check documentation - run: | - cd sdk_relay - cargo doc --no-deps - - - name: Check for TODO/FIXME - run: | - if grep -r "TODO\|FIXME" . --exclude-dir=.git --exclude-dir=target; then - echo "Found TODO/FIXME comments. Please address them." - exit 1 - fi - - # Job de tests unitaires - unit-tests: - name: Unit Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Cache Rust dependencies - uses: actions/cache@v3 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - target - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - restore-keys: | - ${{ runner.os }}-cargo- - - - name: Run unit tests - run: | - cd sdk_relay - cargo test --lib --bins - - - name: Run integration tests - run: | - cd sdk_relay - cargo test --tests - - # Job de tests d'intégration - integration-tests: - name: Integration Tests - runs-on: ubuntu-latest - - services: - docker: - image: docker:24.0.5 - options: >- - --health-cmd "docker info" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 2375:2375 - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build Docker images - run: | - docker build -t 4nk-node-bitcoin ./bitcoin - docker build -t 4nk-node-blindbit ./blindbit - docker build -t 4nk-node-sdk-relay -f ./sdk_relay/Dockerfile .. - - - name: Run integration tests - run: | - # Tests de connectivité de base - ./tests/run_connectivity_tests.sh || true - - # Tests d'intégration - ./tests/run_integration_tests.sh || true - - - name: Upload test results - uses: actions/upload-artifact@v3 - if: always() - with: - name: test-results - path: | - tests/logs/ - tests/reports/ - retention-days: 7 - - # Job de tests de sécurité - security-tests: - name: Security Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Run cargo audit - run: | - cd sdk_relay - cargo audit --deny warnings - - - name: Check for secrets - run: | - # Vérifier les secrets potentiels - if grep -r "password\|secret\|key\|token" . --exclude-dir=.git --exclude-dir=target --exclude=*.md; then - echo "Potential secrets found. Please review." - exit 1 - fi - - - name: Check file permissions - run: | - # Vérifier les permissions sensibles - find . -type f -perm /0111 -name "*.conf" -o -name "*.key" -o -name "*.pem" | while read file; do - if [[ $(stat -c %a "$file") != "600" ]]; then - echo "Warning: $file has insecure permissions" - fi - done - - # Job de build et test Docker - docker-build: - name: Docker Build & Test - runs-on: ubuntu-latest - - services: - docker: - image: docker:24.0.5 - options: >- - --health-cmd "docker info" - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - - 2375:2375 - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and test Bitcoin Core - run: | - docker build -t 4nk-node-bitcoin:test ./bitcoin - docker run --rm 4nk-node-bitcoin:test bitcoin-cli --version - - - name: Build and test Blindbit - run: | - docker build -t 4nk-node-blindbit:test ./blindbit - docker run --rm 4nk-node-blindbit:test --version || true - - - name: Build and test SDK Relay - run: | - docker build -t 4nk-node-sdk-relay:test -f ./sdk_relay/Dockerfile .. - docker run --rm 4nk-node-sdk-relay:test --version || true - - - name: Test Docker Compose - run: | - docker-compose config - docker-compose build --no-cache - - # Job de tests de documentation - documentation-tests: - name: Documentation Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Check markdown links - run: | - # Vérification basique des liens markdown - find . -name "*.md" -exec grep -l "\[.*\](" {} \; | while read file; do - echo "Checking links in $file" - done - - - name: Check documentation structure - run: | - # Vérifier la présence des fichiers de documentation essentiels - required_files=( - "README.md" - "LICENSE" - "CONTRIBUTING.md" - "CHANGELOG.md" - "CODE_OF_CONDUCT.md" - "SECURITY.md" - "docs/INDEX.md" - "docs/INSTALLATION.md" - "docs/USAGE.md" - ) - - for file in "${required_files[@]}"; do - if [[ ! -f "$file" ]]; then - echo "Missing required documentation file: $file" - exit 1 - fi - done - - - name: Validate documentation - run: | - # Vérifier la cohérence de la documentation - if ! grep -q "4NK Node" README.md; then - echo "README.md should mention '4NK Node'" - exit 1 - fi - - # Job de release guard (cohérence release) - release-guard: - name: Release Guard - runs-on: ubuntu-latest - needs: [code-quality, unit-tests, documentation-tests] - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Ensure guard scripts are executable - run: | - chmod +x scripts/release/guard.sh || true - chmod +x scripts/checks/version_alignment.sh || true - - - name: Version alignment check - run: | - if [ -f scripts/checks/version_alignment.sh ]; then - ./scripts/checks/version_alignment.sh - else - echo "No version alignment script (ok)" - fi - - - name: Release guard (CI verify) - env: - RELEASE_TYPE: ci-verify - run: | - if [ -f scripts/release/guard.sh ]; then - ./scripts/release/guard.sh - else - echo "No guard script (ok)" - fi - - # Job de tests de performance - performance-tests: - name: Performance Tests - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ env.RUST_VERSION }} - override: true - - - name: Run performance tests - run: | - cd sdk_relay - cargo test --release --test performance_tests || true - - - name: Check memory usage - run: | - # Tests de base de consommation mémoire - echo "Performance tests completed" - - # Job de notification - notify: - name: Notify - runs-on: ubuntu-latest - needs: [code-quality, unit-tests, integration-tests, security-tests, docker-build, documentation-tests] - if: always() - - steps: - - name: Notify success - if: needs.code-quality.result == 'success' && needs.unit-tests.result == 'success' && needs.integration-tests.result == 'success' && needs.security-tests.result == 'success' && needs.docker-build.result == 'success' && needs.documentation-tests.result == 'success' - run: | - echo "✅ All tests passed successfully!" - - - name: Notify failure - if: needs.code-quality.result == 'failure' || needs.unit-tests.result == 'failure' || needs.integration-tests.result == 'failure' || needs.security-tests.result == 'failure' || needs.docker-build.result == 'failure' || needs.documentation-tests.result == 'failure' - run: | - echo "❌ Some tests failed!" - exit 1 diff --git a/.gitea_template/workflows/template-sync.yml b/.gitea_template/workflows/template-sync.yml deleted file mode 100644 index 132c4af..0000000 --- a/.gitea_template/workflows/template-sync.yml +++ /dev/null @@ -1,39 +0,0 @@ -# .gitea/workflows/template-sync.yml — synchronisation et contrôles d’intégrité (fichier modèle) -name: 4NK Template Sync -on: - schedule: # planification régulière - - cron: "0 4 * * 1" # exécution hebdomadaire (UTC) - workflow_dispatch: {} # déclenchement manuel - -jobs: - check-and-sync: - runs-on: ubuntu-latest - steps: - - name: Lire TEMPLATE_VERSION et .4nk-sync.yml - # Doit charger ref courant, source_repo et périmètre paths - - - name: Récupérer la version publiée du template/4NK_rules - # Doit comparer TEMPLATE_VERSION avec ref amont - - - name: Créer branche de synchronisation si divergence - # Doit créer chore/template-sync- et préparer un commit - - - name: Synchroniser les chemins autoritatifs - # Doit mettre à jour .cursor/**, .gitea/**, AGENTS.md, scripts/**, docs/SSH_UPDATE.md - - - name: Contrôles post-sync (bloquants) - # 1) Vérifier présence et exécutable des scripts/*.sh - # 2) Vérifier mise à jour CHANGELOG.md et docs/INDEX.md - # 3) Vérifier docs/SSH_UPDATE.md si scripts/** a changé - # 4) Vérifier absence de secrets en clair dans scripts/** - # 5) Vérifier manifest_checksum si publié - - - name: Tests, lint, sécurité statique - # Doit exiger un état vert - - - name: Ouvrir PR de synchronisation - # Titre: "[template-sync] chore: aligner .cursor/.gitea/AGENTS.md/scripts" - # Doit inclure résumé des fichiers modifiés et la version appliquée - - - name: Mettre à jour TEMPLATE_VERSION (dans PR) - # Doit remplacer la valeur par la ref appliquée diff --git a/docs/API.md b/docs/API.md index c4016eb..c6bce4c 100644 --- a/docs/API.md +++ b/docs/API.md @@ -1254,3 +1254,4 @@ curl -X POST http://localhost:8091/restart --- **Cette documentation décrit tous les flux de données JSON entre les clients et sdk_relay.** 🚀 + diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index fb6bb5a..30e6e40 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -330,3 +330,4 @@ RUST_LOG=debug,hyper=trace --- **Cette architecture garantit un service de relais robuste, performant et évolutif pour l'écosystème 4NK Node.** 🚀 + diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index b9fa339..0a9ee9d 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -626,3 +626,4 @@ export RUST_LOG=sdk_relay::blindbit=debug --- **⚙️ Configuration sdk_relay - Optimisée pour vos besoins !** 🚀 + diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 33612cf..5d399a2 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -30,3 +30,4 @@ cargo test --all - `src/` modules (websocket, http, sync, daemon) - `docs/` documentation utilisateur/technique - `tests/` scripts et artefacts + diff --git a/docs/EXEMPLES_PRATIQUES.md b/docs/EXEMPLES_PRATIQUES.md index 9fb523f..bd76790 100644 --- a/docs/EXEMPLES_PRATIQUES.md +++ b/docs/EXEMPLES_PRATIQUES.md @@ -607,3 +607,4 @@ spec: Ces exemples couvrent les cas d'usage les plus courants pour sdk_relay. Adaptez-les selon vos besoins spécifiques ! + diff --git a/docs/GITEA_SETUP.md b/docs/GITEA_SETUP.md index a5df5f0..c854ee1 100644 --- a/docs/GITEA_SETUP.md +++ b/docs/GITEA_SETUP.md @@ -19,3 +19,4 @@ - Tags SemVer - CHANGELOG mis à jour - Artefacts (binaires/images) optionnels + diff --git a/docs/INDEX.md b/docs/INDEX.md index 0017eca..bdee54d 100644 --- a/docs/INDEX.md +++ b/docs/INDEX.md @@ -305,3 +305,4 @@ docker run -p 8090:8090 -p 8091:8091 sdk_relay --- **📚 Documentation complète pour sdk_relay - Service de relais pour les Silent Payments** 🚀 + diff --git a/docs/INSTALLATION.md b/docs/INSTALLATION.md index 0cc0848..b937609 100644 --- a/docs/INSTALLATION.md +++ b/docs/INSTALLATION.md @@ -476,3 +476,4 @@ En cas de problème : --- **🚀 Installation terminée ! sdk_relay est prêt à être utilisé.** ✨ + diff --git a/docs/OPEN_SOURCE_CHECKLIST.md b/docs/OPEN_SOURCE_CHECKLIST.md index 2afe548..ca33b2b 100644 --- a/docs/OPEN_SOURCE_CHECKLIST.md +++ b/docs/OPEN_SOURCE_CHECKLIST.md @@ -26,3 +26,4 @@ - Templates Issues/PR - Guide Communauté - Plan de release + diff --git a/docs/PERFORMANCE.md b/docs/PERFORMANCE.md index dbf849d..7616cec 100644 --- a/docs/PERFORMANCE.md +++ b/docs/PERFORMANCE.md @@ -24,3 +24,4 @@ - Scripts d’observation (stats système) - Export métriques endpoints `/metrics` + diff --git a/docs/QUICK_REFERENCE.md b/docs/QUICK_REFERENCE.md index b804122..a9a7c6d 100644 --- a/docs/QUICK_REFERENCE.md +++ b/docs/QUICK_REFERENCE.md @@ -29,3 +29,4 @@ - Ports 8090/8091 ouverts - Bitcoin Core RPC OK - Blindbit HTTP OK + diff --git a/docs/RELEASE_PLAN.md b/docs/RELEASE_PLAN.md index f7486fc..d48f3fe 100644 --- a/docs/RELEASE_PLAN.md +++ b/docs/RELEASE_PLAN.md @@ -17,3 +17,4 @@ - CHANGELOG complété - Tag créé (`vX.Y.Z`) - Annonce préparée (Gitea release notes) + diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index 1ab591e..839fd82 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -23,3 +23,4 @@ - Taux d’erreurs - Couverture de tests - SLO disponibilité + diff --git a/docs/SECURITY_AUDIT.md b/docs/SECURITY_AUDIT.md index c0e677d..0228de8 100644 --- a/docs/SECURITY_AUDIT.md +++ b/docs/SECURITY_AUDIT.md @@ -26,3 +26,4 @@ ## Résultats et suivi - Issues Gitea créées pour findings - Plan de remédiation par priorité + diff --git a/docs/SSH_USATE.md b/docs/SSH_USATE.md index 981572c..bfd533a 100644 --- a/docs/SSH_USATE.md +++ b/docs/SSH_USATE.md @@ -320,3 +320,4 @@ L'automatisation SSH pour `ihm_client` simplifie considérablement le workflow d **Dernière mise à jour** : $(date '+%Y-%m-%d') **Version** : 1.0.0 + diff --git a/docs/TESTING.md b/docs/TESTING.md index 8867cd7..1de847e 100644 --- a/docs/TESTING.md +++ b/docs/TESTING.md @@ -42,3 +42,4 @@ cargo fmt -- --check - Les tests isolent le stockage disque sous le répertoire parent obligatoire `/tmp/.4nk`. - Chaque exécution crée des fichiers uniques: `wallet_{uuid}`, `processes_{uuid}`, `members_{uuid}`. - Objectif: éviter le partage d’état entre tests et empoisonnements de verrous. + diff --git a/docs/TROUBLESHOOTING.md b/docs/TROUBLESHOOTING.md index 8996b81..0af096b 100644 --- a/docs/TROUBLESHOOTING.md +++ b/docs/TROUBLESHOOTING.md @@ -26,3 +26,4 @@ - `docker logs`, `journalctl` (si service) - `RUST_LOG=debug` - Scripts de tests/monitoring + diff --git a/docs/USAGE.md b/docs/USAGE.md index 75e5b22..491a582 100644 --- a/docs/USAGE.md +++ b/docs/USAGE.md @@ -708,3 +708,4 @@ awk '/ERROR/ {count++} END {print count}' logs/sdk_relay.log --- **🎯 Service sdk_relay - Prêt pour une utilisation en production !** ✨ + diff --git a/docs/spec-technique.md b/docs/spec-technique.md index 4c5e0f9..79f7e27 100644 --- a/docs/spec-technique.md +++ b/docs/spec-technique.md @@ -1104,3 +1104,4 @@ chmod 600 /home/bitcoin/.4nk/bitcoin.cookie ## Conclusion `sdk_relay` est un service Rust robuste et performant qui implémente un relais complet pour les Silent Payments. Son architecture modulaire, sa gestion asynchrone et ses mécanismes de sécurité en font une solution production-ready pour l'intégration des paiements silencieux avec Bitcoin Core. +