From 93b42c9a24767760dc076b3119e5f1cfa8208612 Mon Sep 17 00:00:00 2001 From: Nicolas Cantu Date: Wed, 27 Aug 2025 21:46:15 +0200 Subject: [PATCH] ci(agents): pass target_dir and inject secrets; docs(project): complete --- .cursorignore | 1 + .gitea/workflows/ci.yml | 22 +++----- .gitignore | 1 + TEMPLATE_VERSION | 1 + .../2025-08-27-docs_app_specific_content.md | 12 ---- docs/AGENTS_RUNTIME.md | 18 ------ docs/API.md | 16 ------ docs/ARCHITECTURE.md | 27 --------- docs/CONFIGURATION.md | 20 ------- docs/DEPLOYMENT.md | 20 ------- docs/GITEA_SETUP.md | 15 ----- docs/INDEX.md | 12 ---- docs/OPEN_SOURCE_CHECKLIST.md | 17 ------ docs/RELEASE_PLAN.md | 19 ------- docs/SECURITY_AUDIT.md | 19 ------- docs/TESTING.md | 26 --------- docs/USAGE.md | 25 --------- docs/project/AGENTS_RUNTIME.md | 56 +++++++++++++++++++ docs/project/ARCHITECTURE.md | 20 +++++++ docs/project/CONFIGURATION.md | 13 +++++ docs/project/DEPLOYMENT.md | 22 ++++++++ docs/project/GITEA_SETUP.md | 25 +++++++++ docs/project/OPEN_SOURCE_GUIDE.md | 15 +++++ docs/project/QUALITY_STANDARDS.md | 9 +++ docs/project/README.md | 30 ---------- docs/project/RELEASE_PLAN.md | 20 +++++++ docs/project/ROADMAP.md | 22 ++++++++ docs/project/SECURITY_AUDIT.md | 24 ++++++++ docs/project/USAGE.md | 1 + scripts/checks/version_alignment.sh | 1 + scripts/release/guard.sh | 1 + scripts/security/audit.sh | 1 + 32 files changed, 240 insertions(+), 291 deletions(-) delete mode 100644 archive/2025-08-27-docs_app_specific_content.md delete mode 100644 docs/AGENTS_RUNTIME.md delete mode 100644 docs/API.md delete mode 100644 docs/ARCHITECTURE.md delete mode 100644 docs/CONFIGURATION.md delete mode 100644 docs/DEPLOYMENT.md delete mode 100644 docs/GITEA_SETUP.md delete mode 100644 docs/INDEX.md delete mode 100644 docs/OPEN_SOURCE_CHECKLIST.md delete mode 100644 docs/RELEASE_PLAN.md delete mode 100644 docs/SECURITY_AUDIT.md delete mode 100644 docs/TESTING.md delete mode 100644 docs/USAGE.md create mode 100644 docs/project/AGENTS_RUNTIME.md create mode 100644 docs/project/ARCHITECTURE.md create mode 100644 docs/project/CONFIGURATION.md create mode 100644 docs/project/DEPLOYMENT.md create mode 100644 docs/project/GITEA_SETUP.md create mode 100644 docs/project/OPEN_SOURCE_GUIDE.md create mode 100644 docs/project/QUALITY_STANDARDS.md delete mode 100644 docs/project/README.md create mode 100644 docs/project/RELEASE_PLAN.md create mode 100644 docs/project/ROADMAP.md create mode 100644 docs/project/SECURITY_AUDIT.md diff --git a/.cursorignore b/.cursorignore index 82d24f4..700ef8e 100644 --- a/.cursorignore +++ b/.cursorignore @@ -20,3 +20,4 @@ tests/reports/ # Ne pas ignorer .cursor ni AGENTS.md !/.cursor !/AGENTS.md + diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index f168446..463a6c1 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -248,9 +248,6 @@ jobs: "CHANGELOG.md" "CODE_OF_CONDUCT.md" "SECURITY.md" - "docs/INDEX.md" - "docs/INSTALLATION.md" - "docs/USAGE.md" ) for file in "${required_files[@]}"; do @@ -260,14 +257,6 @@ jobs: 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 - bash-required: name: Bash Requirement runs-on: ubuntu-latest @@ -299,7 +288,7 @@ jobs: OPENAI_API_KEY: "" run: | mkdir -p tests/reports/agents - scripts/agents/run.sh tests/reports/agents all + scripts/agents/run.sh . tests/reports/agents all - name: Upload agents reports uses: actions/upload-artifact@v3 with: @@ -310,6 +299,11 @@ jobs: name: Agents with OpenIA runs-on: ubuntu-latest if: ${{ secrets.OPENAI_API_KEY != '' }} + env: + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} + OPENAI_MODEL: ${{ vars.OPENAI_MODEL }} + OPENAI_API_BASE: ${{ vars.OPENAI_API_BASE }} + OPENAI_TEMPERATURE: ${{ vars.OPENAI_TEMPERATURE }} steps: - name: Checkout code uses: actions/checkout@v3 @@ -317,11 +311,9 @@ jobs: run: | chmod +x scripts/agents/*.sh || true - name: Run agents with AI - env: - OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} run: | mkdir -p tests/reports/agents - scripts/agents/run.sh tests/reports/agents all + scripts/agents/run.sh . tests/reports/agents all - name: Upload agents reports uses: actions/upload-artifact@v3 with: diff --git a/.gitignore b/.gitignore index 119ec79..5f17270 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ PortableGit-64-bit.7z.exe git-installer.exe # Ne pas ignorer .cursor ni AGENTS.md + diff --git a/TEMPLATE_VERSION b/TEMPLATE_VERSION index c584fbf..02f290f 100644 --- a/TEMPLATE_VERSION +++ b/TEMPLATE_VERSION @@ -1 +1,2 @@ v2025.08 + diff --git a/archive/2025-08-27-docs_app_specific_content.md b/archive/2025-08-27-docs_app_specific_content.md deleted file mode 100644 index e1047ee..0000000 --- a/archive/2025-08-27-docs_app_specific_content.md +++ /dev/null @@ -1,12 +0,0 @@ -# Contenu documentaire spécifique (archivé) - -- Date: 2025-08-27 -- Raison: Nettoyage du template 4NK_template pour supprimer les éléments applicatifs propres à 4NK Node (Bitcoin/Blindbit/sdk_relay) et garder une base générique. -- Impact: sections détaillant des commandes/services applicatifs déplacées depuis `docs/` vers `archive/`. - -Sections concernées: -- Anciennes commandes opérationnelles (docker, scripts spécifiques) dans `docs/USAGE.md` -- Endpoints et exemples d’APIs (Bitcoin RPC, Blindbit, SDK Relay) dans `docs/API.md` -- Exemples lourds (OpenSSL, Prometheus, ELK) dans `docs/CONFIGURATION.md` - -Les projets dérivés doivent réintroduire uniquement les parties pertinentes côté application dans leur propre dépôt, avec mise à jour de `docs/INDEX.md` et du `CHANGELOG.md`. diff --git a/docs/AGENTS_RUNTIME.md b/docs/AGENTS_RUNTIME.md deleted file mode 100644 index bb2e306..0000000 --- a/docs/AGENTS_RUNTIME.md +++ /dev/null @@ -1,18 +0,0 @@ -# Exécution des agents — 4NK_template - -## Recommandé (bash) -`scripts/agents/run.sh [target_dir] [output_dir] [agent]` -- Rapports par défaut: `tests/reports/agents` -- Agent `all` pour tout lancer - -## Fallback PowerShell (Windows) -`scripts/agents/run.ps1 -TargetDir . -OutputDir tests/reports/agents -Agent ` -- Contrôles simplifiés si bash absent - -## Mode sans IA -- Sans `OPENAI_API_KEY`: contrôles locaux uniquement -- Avec clé: analyse IA via `scripts/agents/ai_prompt.sh` - -## CI -- Jobs `agents-smoke` (sans IA) et `openia-agents` (avec IA si secret présent) -- `bash-required` vérifie la présence de bash et du runner diff --git a/docs/API.md b/docs/API.md deleted file mode 100644 index 6976a86..0000000 --- a/docs/API.md +++ /dev/null @@ -1,16 +0,0 @@ -# Référence API — 4NK_template - -Ce document suit le squelette des modèles et doit être adapté par chaque projet dérivé. - -## Principes -- Documenter chaque interface (REST/RPC/WebSocket/etc.) -- Décrire les schémas, invariants, statuts d’erreur -- Aligner avec la version publiée (`TEMPLATE_VERSION`) et `CHANGELOG.md` - -## Sections à compléter -- Vue d’ensemble -- Authentification et permissions -- Endpoints/contrats (par domaine) -- Codes d’erreur et sémantique -- Limites et quotas -- Sécurité et conformité diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md deleted file mode 100644 index 896091d..0000000 --- a/docs/ARCHITECTURE.md +++ /dev/null @@ -1,27 +0,0 @@ -# Architecture Technique — 4NK_template - -## Vue d’ensemble -Document générique à décliner par projet dérivé du template 4NK_template. - -## Architecture générale -- Couche présentation (UI/clients) -- Couche API/services -- Couche données (base, stockage, files) -- Observabilité (logs, métriques, traces) -- Automatisation (CI/CD) - -## Composants principaux -- Responsabilités, entrées/sorties, SLA - -## Environnements - -## Orchestration - -## CI/CD -- Qualité, tests, sécurité, documentation, release-guard -- Alignement `TEMPLATE_VERSION` ↔ `CHANGELOG.md` ↔ tag - -## Troubleshooting -- Connectivité, performance, configuration - -## Évolutions diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md deleted file mode 100644 index 4b14ca9..0000000 --- a/docs/CONFIGURATION.md +++ /dev/null @@ -1,20 +0,0 @@ -# ⚙️ Guide de Configuration — 4NK_template - -Ce document fournit une trame de configuration à adapter dans chaque projet dérivé. - -## Variables d’environnement -- Nom, type, valeur par défaut, portée -- Groupées par domaine (app, sécurité, CI, déploiement) - -## Fichiers de configuration -- Format, emplacement, validation - -## Réseau et sécurité -- Ports, authentification, chiffrement (à définir au projet) - -## Observabilité -- Métriques, logs, traces (outils et formats à préciser) - -## Politique de dépendances -- Ajouter les dépendances justifiées, versions stables -- Documenter impacts: `docs/ARCHITECTURE.md` et `CHANGELOG.md` diff --git a/docs/DEPLOYMENT.md b/docs/DEPLOYMENT.md deleted file mode 100644 index 9a65c49..0000000 --- a/docs/DEPLOYMENT.md +++ /dev/null @@ -1,20 +0,0 @@ -# Déploiement — 4NK_template - -## Environnements -- Dev, staging, prod (à définir par projet) - -## Prérequis -- Conteneurisation/outillage selon projet -- Secrets via CI - -## Processus -- Pré‑checks: tests/doc/sécurité/version -- Déploiement: pipeline CI dédié -- Validation: smoke checks, santé, métriques - -## Rollback -- Version précédente prête -- Critères d’activation - -## Post‑déploiement -- Santé, logs, tableaux de bord diff --git a/docs/GITEA_SETUP.md b/docs/GITEA_SETUP.md deleted file mode 100644 index 2dd5263..0000000 --- a/docs/GITEA_SETUP.md +++ /dev/null @@ -1,15 +0,0 @@ -# Configuration Gitea — 4NK_template - -## Repository -- CI active (workflows .gitea/workflows/*.yml) -- Templates issues/PR présents - -## Protections de branches -- Reviews requises avant merge -- Status checks requis - -## Secrets -- Stocker les secrets en CI (pas en clair dans le dépôt) - -## Release-guard -- Vérifie: tests/doc/build/sécurité/version/changelog/tag diff --git a/docs/INDEX.md b/docs/INDEX.md deleted file mode 100644 index b847597..0000000 --- a/docs/INDEX.md +++ /dev/null @@ -1,12 +0,0 @@ -# 📚 Index de documentation — 4NK_template - -## Documentation du dépôt (template) -- `docs/project/INDEX.md` - -## Modèles pour projets dérivés -- `docs/templates/INDEX.md` - -## Guides de référence -- Qualité: `docs/QUALITY_STANDARDS.md` -- Open source: `docs/OPEN_SOURCE_GUIDE.md` -- Agents: `docs/AGENTS_RUNTIME.md` diff --git a/docs/OPEN_SOURCE_CHECKLIST.md b/docs/OPEN_SOURCE_CHECKLIST.md deleted file mode 100644 index b3c2cc4..0000000 --- a/docs/OPEN_SOURCE_CHECKLIST.md +++ /dev/null @@ -1,17 +0,0 @@ -# Checklist de préparation open source — 4NK_template - -## Gouvernance -- LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md - -## CI/CD -- Workflows présents (tests, lint, security‑audit, release‑guard) - -## Documentation -- README, INDEX, guides essentiels à jour - -## Sécurité -- Secrets via CI, permissions, audit sécurité OK - -## Publication -- Version/CHANGELOG/tag alignés -- Notes de release diff --git a/docs/RELEASE_PLAN.md b/docs/RELEASE_PLAN.md deleted file mode 100644 index e731af8..0000000 --- a/docs/RELEASE_PLAN.md +++ /dev/null @@ -1,19 +0,0 @@ -# Plan de release — 4NK_template - -## Objectifs -- Version documentée, testée, sécurisée -- Processus reproductible - -## Préparation -- CI verte: lint/tests/doc/security‑audit/release‑guard -- Docs à jour -- Version/Changelog/Tag alignés - -## Lancement -- Tag: `vX.Y.Z` ou `vX.Y.Z-wip.N` -- Notes de release - -## Post‑lancement -- Suivi issues/retours -- Corrections critiques -- Mise à jour roadmap diff --git a/docs/SECURITY_AUDIT.md b/docs/SECURITY_AUDIT.md deleted file mode 100644 index 9353cd2..0000000 --- a/docs/SECURITY_AUDIT.md +++ /dev/null @@ -1,19 +0,0 @@ -# Audit de sécurité — 4NK_template - -## Menaces -- Secrets, permissions, endpoints sensibles, dépendances - -## Contrôles -- Scan secrets/permissions -- Audit dépendances -- Vérifs config (auth/TLS/CORS/rate‑limit) -- Journalisation sécurité - -## CI security‑audit -- Job dédié qui échoue en cas d’alerte critique - -## Politique des secrets -- Secrets CI, rotation, aucune clé en clair - -## Remédiation -- Corriger critiques, documenter dans CHANGELOG diff --git a/docs/TESTING.md b/docs/TESTING.md deleted file mode 100644 index ca550b9..0000000 --- a/docs/TESTING.md +++ /dev/null @@ -1,26 +0,0 @@ -# Guide de Tests — 4NK_template - -## Vue d’ensemble -- Unit, Integration, Connectivity, External, Performance - -## Structure -``` -tests/ -├── README.md -├── cleanup.sh -├── logs/ -├── reports/ -├── unit/ -├── integration/ -├── connectivity/ -├── external/ -└── performance/ -``` - -## Exécution -- Scripts spécifiques au projet -- Rapports dans `tests/reports/` - -## CI -- Exécutions par catégorie -- Blocage release en cas d’échec (release‑guard) diff --git a/docs/USAGE.md b/docs/USAGE.md deleted file mode 100644 index c5b5ce6..0000000 --- a/docs/USAGE.md +++ /dev/null @@ -1,25 +0,0 @@ -# 📖 Guide d’Utilisation — 4NK_template - -Ce guide d’usage est générique; adaptez‑le pour votre projet dérivé. - -## Démarrage quotidien -- Vérifier la CI locale (lint/tests/doc) -- Démarrer vos services (si applicable) -- Vérifier logs, métriques et alertes - -## Opérations courantes -- Logs applicatifs -- Healthchecks et métriques -- Exécuter les suites de tests - -## Tests -- Voir `docs/TESTING.md` -- Rapports dans `tests/reports/` - -## Sécurité -- Audits dépendances et secrets -- Voir `docs/SECURITY_AUDIT.md` - -## Déploiement -- Voir `docs/DEPLOYMENT.md` -- Contrôles `deployment-checks` en CI diff --git a/docs/project/AGENTS_RUNTIME.md b/docs/project/AGENTS_RUNTIME.md new file mode 100644 index 0000000..c0b9e91 --- /dev/null +++ b/docs/project/AGENTS_RUNTIME.md @@ -0,0 +1,56 @@ +# Exécution des agents — 4NK_template (projet) + +Ce guide décrit comment utiliser et intégrer les agents de conformité (qualité, documentation, sécurité, déploiement, etc.) fournis par le template. + +## 1. Présentation +- Agents bash (recommandé) avec rapports Markdown +- Fallback PowerShell (Windows) produisant des contrôles simplifiés +- Intégration CI (agents-smoke, openia-agents) et garde `bash-required` + +## 2. Prérequis +- bash disponible (Git Bash/WSL/Linux/macOS) pour les contrôles complets +- (Optionnel) `OPENAI_API_KEY` pour activer l’analyse IA + +## 3. Commandes +- Bash (recommandé): + - `scripts/agents/run.sh [target_dir] [output_dir] [agent]` + - Par défaut: `target_dir=.` `output_dir=tests/reports/agents` `agent=all` +- PowerShell (fallback Windows): + - `scripts/agents/run.ps1 -TargetDir . -OutputDir tests/reports/agents -Agent ` + +## 4. Agents disponibles +- Documentation (`documentation`): fichiers essentiels et index +- Qualité technique (`quality-technique`): fichiers de base, lint/type-check si outillage présent +- Open source (`open-source`): LICENSE, CONTRIBUTING, CODE_OF_CONDUCT, checklists +- Tests (`tests`): structure, logs et rapports +- Performance (`performance`): structure et recommandations +- Sécurité (`securite`): posture, CI `security-audit` +- Déploiement (`deploiement`): documentation et contrôles CI +- Dépendances (`dependances`): politique et mise à jour +- Compilation (`compilation`): étapes de build en CI +- Résolution (`resolution`): REX/archives +- SSH & scripts (`ssh-scripts`): scripts SSH et doc associée +- Frontend (`frontend`): principes génériques si applicable +- Gitea (`gitea`): templates et workflows +- Versionnage (`versionnage`): CHANGELOG/TEMPLATE_VERSION +- Synchronisation (`sync-template`): manifeste/template-sync +- Dérogations locales (`derogations-locales`): fichier de dérogations + +## 5. Sorties +- Rapports Markdown: `tests/reports/agents/*.md` +- À relire avant PR; corriger les écarts signalés + +## 6. Intégration CI +- `agents-smoke`: agents en mode sans IA (rapports artefacts) +- `openia-agents`: agents avec IA si `OPENAI_API_KEY` fourni +- `bash-required`: bloque si bash/runner absent +- `release-guard`: dépend des checks en amont + +## 7. Paramètres IA (optionnels) +- `OPENAI_API_KEY`, `OPENAI_MODEL`, `OPENAI_API_BASE`, `OPENAI_TEMPERATURE` + +## 8. Bonnes pratiques +- Exécuter les agents avant chaque PR +- Archiver les rapports significatifs +- Documenter les décisions dans le changelog et la doc + diff --git a/docs/project/ARCHITECTURE.md b/docs/project/ARCHITECTURE.md new file mode 100644 index 0000000..2c5a5bb --- /dev/null +++ b/docs/project/ARCHITECTURE.md @@ -0,0 +1,20 @@ +# Architecture — 4NK_template + +## Arborescence de référence +- `.gitea/**` — Workflows CI et templates Gitea +- `docs/project/**` — Doc du template +- `docs/templates/**` — Modèles à copier +- `scripts/agents/**` — Agents (bash + PS fallback) +- `tests/**` — Structure de tests, logs, rapports + +## Découpage +- Documentation (templates vs project) +- Qualité et CI (jobs, garde de release) +- Sécurité (audit, secrets) +- Agents (contrôles automatiques) + +## Invariants +- Pas d’exemples applicatifs dans le template +- Documentation et changelog à jour à chaque changement +- CI bloquante si prérequis manquants (bash-required) + diff --git a/docs/project/CONFIGURATION.md b/docs/project/CONFIGURATION.md new file mode 100644 index 0000000..5c763e8 --- /dev/null +++ b/docs/project/CONFIGURATION.md @@ -0,0 +1,13 @@ +# Configuration — 4NK_template (projet) + +## Variables d’environnement (CI) +- Secrets CI uniquement (pas de secrets en clair) +- Variables agents : OPENAI_API_KEY, OPENAI_MODEL, OPENAI_API_BASE, OPENAI_TEMPERATURE + +## Conventions +- Retours de ligne normalisés par CI +- Dossiers `tests/logs` et `tests/reports` réservés aux artefacts + +## Pré-requis agents +- bash requis (job CI `bash-required`) +- Fallback PowerShell utilisable localement diff --git a/docs/project/DEPLOYMENT.md b/docs/project/DEPLOYMENT.md new file mode 100644 index 0000000..6c291e7 --- /dev/null +++ b/docs/project/DEPLOYMENT.md @@ -0,0 +1,22 @@ +# Déploiement — 4NK_template (projet) + +## Environnements +- Dev, staging, prod (à définir par projets consommateurs) + +## Prérequis +- Outils de déploiement et conteneurisation selon projet +- Secrets fournis via CI (jamais en clair) + +## Processus +- Pré‑checks: tests/doc/sécurité/version/changelog/tag +- Déploiement: pipeline CI dédié +- Validation: smoke checks, santé, métriques + +## Rollback +- Version précédente prête, compatibilité des données +- Critères d’activation, procédure documentée + +## Post‑déploiement +- Vérification santé/logs/dashboards +- Suivi des erreurs et retours + diff --git a/docs/project/GITEA_SETUP.md b/docs/project/GITEA_SETUP.md new file mode 100644 index 0000000..845306a --- /dev/null +++ b/docs/project/GITEA_SETUP.md @@ -0,0 +1,25 @@ +# Configuration Gitea — 4NK_template (projet) + +## 1. Repository +- Activer les Actions (workflows `.gitea/workflows/*.yml`) +- Vérifier les templates d’issues/PR + +## 2. Protections de branches +- Reviews requises avant merge +- Status checks requis (CI verte) +- Mise à jour obligatoire de la branche avant merge + +## 3. Secrets et variables +- Secrets: `OPENAI_API_KEY` (optionnel), secrets de déploiement +- Variables: paramètres de CI non sensibles + +## 4. Workflows requis +- `code-quality`, `unit-tests`, `documentation-tests`, `security-audit` +- `deployment-checks`, `bash-required`, `release-guard` +- (Optionnels) `agents-smoke`, `openia-agents` + +## 5. Processus PR +- Branche dédiée, PR petite et ciblée +- CI verte, review approuvée +- Doc et changelog à jour + diff --git a/docs/project/OPEN_SOURCE_GUIDE.md b/docs/project/OPEN_SOURCE_GUIDE.md new file mode 100644 index 0000000..7694298 --- /dev/null +++ b/docs/project/OPEN_SOURCE_GUIDE.md @@ -0,0 +1,15 @@ +# Guide open source — 4NK_template (projet) + +## Pré-requis +- LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md + +## CI +- tests, lint, security-audit, release-guard, bash-required + +## Publication +- Alignement version/changelog/tag, notes de release + +## Communauté +- Templates issues/PR, labels, milestones +- Divulgation responsable des vulnérabilités + diff --git a/docs/project/QUALITY_STANDARDS.md b/docs/project/QUALITY_STANDARDS.md new file mode 100644 index 0000000..22d5dfd --- /dev/null +++ b/docs/project/QUALITY_STANDARDS.md @@ -0,0 +1,9 @@ +# Standards de qualité — 4NK_template (projet) + +- Conventions de code: linters/formatters (selon la pile du consommateur) +- Analyse statique: types, duplication, complexité +- Revue obligatoire avant merge +- Tests verts (catégories pertinentes) et rapports conservés +- Documentation à jour (INDEX, guides impactés) +- Sécurité de base: secrets, permissions, audit CI + diff --git a/docs/project/README.md b/docs/project/README.md deleted file mode 100644 index b99a9cd..0000000 --- a/docs/project/README.md +++ /dev/null @@ -1,30 +0,0 @@ -# README — 4NK_template - -## Présentation -Template documentaire, CI et scripts de qualité/sécurité pour initier des projets 4NK cohérents et industrialisés. - -## Objectifs -- Offrir des modèles de documentation prêts à l’emploi -- Standardiser qualité, tests, sécurité et release -- Faciliter l’exécution d’agents de conformité - -## Périmètre -- Documentation générique (non applicative) -- CI Gitea (tests, security-audit, release-guard, bash-required) -- Scripts d’agents (bash recommandé, fallback PowerShell) - -## Structure -- `docs/project/**` — Documentation du template -- `docs/templates/**` — Modèles à copier dans les projets -- `scripts/agents/**` — Agents et outillage -- `tests/**` — Structure, journaux et rapports - -## Utilisation -- Lire `docs/project/INDEX.md` -- Consulter `docs/project/USAGE.md` pour l’usage détaillé -- Exécuter les agents pour un diagnostic: rapport dans `tests/reports/agents` - -## Gouvernance -- Standards: `docs/QUALITY_STANDARDS.md` -- Open source: `docs/OPEN_SOURCE_GUIDE.md` -- Publication: `docs/project/RELEASE_PLAN.md` diff --git a/docs/project/RELEASE_PLAN.md b/docs/project/RELEASE_PLAN.md new file mode 100644 index 0000000..31ec562 --- /dev/null +++ b/docs/project/RELEASE_PLAN.md @@ -0,0 +1,20 @@ +# Plan de release — 4NK_template (projet) + +## Objectifs +- Version documentée, testée, sécurisée +- Processus reproductible et traçable + +## Préparation +- CI verte: lint/tests/doc/security‑audit/release‑guard +- Docs à jour (INDEX, guides impactés) +- Version/Changelog/Tag alignés + +## Lancement +- Tagging: `vX.Y.Z` ou `vX.Y.Z-wip.N` +- Notes de release (résumé, changements majeurs, impacts) + +## Post‑lancement +- Suivi issues/retours +- Corrections critiques +- Mise à jour de la roadmap + diff --git a/docs/project/ROADMAP.md b/docs/project/ROADMAP.md new file mode 100644 index 0000000..97fb191 --- /dev/null +++ b/docs/project/ROADMAP.md @@ -0,0 +1,22 @@ +# Roadmap — 4NK_template (projet) + +## Vision +Maintenir un template robuste (docs, CI, sécurité) pour accélérer les projets. + +## Objectifs (12 mois) +- Qualité: standards renforcés, automatisations CI supplémentaires +- Documentation: squelettes enrichis, index cohérents +- Sécurité: contrôles CI étendus, guides pratiques +- Outillage: agents élargis, rapports synthétiques + +## Jalons +- T1: Mise à jour squelettes docs et agents +- T2: Extensions CI (lint multi‑langages, déploiement dry‑run) +- T3: Guides open source/qualité consolidés +- T4: Synchronisation de template outillée + +## Mesure du progrès +- CI verte en continu +- Adoption des squelettes par projets +- Diminution des écarts de conformité + diff --git a/docs/project/SECURITY_AUDIT.md b/docs/project/SECURITY_AUDIT.md new file mode 100644 index 0000000..92210a8 --- /dev/null +++ b/docs/project/SECURITY_AUDIT.md @@ -0,0 +1,24 @@ +# Audit de sécurité — 4NK_template (projet) + +## Menaces +- Secrets, permissions, endpoints sensibles, dépendances, supply chain + +## Contrôles +- Scan secrets/permissions +- Audit dépendances (outil selon la pile des projets) +- Vérifs de configuration (auth/TLS/CORS/rate‑limit) +- Journalisation sécurité, traçabilité + +## CI +- Job `security-audit` échoue si alerte critique +- Rapports archivés en artefacts + +## Politique des secrets +- Exclusivement secrets CI/variables d’environnement +- Rotation régulière, révocation sur incident +- Aucun secret en clair dans le dépôt + +## Remédiation +- Prioriser, corriger, documenter dans `CHANGELOG.md` +- Ajouter des tests de non‑régression sécurité si pertinent + diff --git a/docs/project/USAGE.md b/docs/project/USAGE.md index e3f9286..c60cdae 100644 --- a/docs/project/USAGE.md +++ b/docs/project/USAGE.md @@ -53,3 +53,4 @@ Ce document explique comment utiliser le template pour initier, documenter, cont - Pas d’exemples applicatifs dans le template - Toujours mettre à jour la documentation et le changelog - Réduire la dérive: synchroniser régulièrement vos projets avec les squelettes et standards + diff --git a/scripts/checks/version_alignment.sh b/scripts/checks/version_alignment.sh index d682cf6..e399e72 100644 --- a/scripts/checks/version_alignment.sh +++ b/scripts/checks/version_alignment.sh @@ -18,3 +18,4 @@ if ! grep -Eq "^## \\[$(echo "$v" | sed 's/^v//')\\]" CHANGELOG.md; then fi echo "Version alignment OK" + diff --git a/scripts/release/guard.sh b/scripts/release/guard.sh index 46fde57..cb5410b 100644 --- a/scripts/release/guard.sh +++ b/scripts/release/guard.sh @@ -63,3 +63,4 @@ case "$mode" in esac echo "[release-guard] OK" + diff --git a/scripts/security/audit.sh b/scripts/security/audit.sh index 06632ef..4dc1d4c 100644 --- a/scripts/security/audit.sh +++ b/scripts/security/audit.sh @@ -33,3 +33,4 @@ fi echo "[security-audit] terminé rc=$rc" exit $rc +