docs(markdown): normalize list indentation for MD005/MD007; config: set MD007 indent=2
This commit is contained in:
parent
0144a628a5
commit
03ed5ef760
@ -5,6 +5,9 @@
|
|||||||
"tables": false,
|
"tables": false,
|
||||||
"headings": false
|
"headings": false
|
||||||
},
|
},
|
||||||
|
"MD007": {
|
||||||
|
"indent": 2
|
||||||
|
},
|
||||||
"MD024": {
|
"MD024": {
|
||||||
"siblings_only": true
|
"siblings_only": true
|
||||||
}
|
}
|
||||||
|
61
CHANGELOG.md
61
CHANGELOG.md
@ -8,40 +8,45 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Nouveaux agents: Qualité technique, Déploiement (AGENTS.md)
|
- Nouveaux agents: Qualité technique, Déploiement (AGENTS.md)
|
||||||
- Documentation de déploiement `docs/DEPLOYMENT.md`
|
- Documentation de déploiement `docs/DEPLOYMENT.md`
|
||||||
- Documentation `docs/SSH_UPDATE.md` pour scripts SSH
|
- Documentation `docs/SSH_UPDATE.md` pour scripts SSH
|
||||||
- Job CI `deployment-checks` et intégration au `release-guard`
|
- Job CI `deployment-checks` et intégration au `release-guard`
|
||||||
- Scripts agents activables sans Cursor (`scripts/agents/*`), doc `docs/AGENTS_RUNTIME.md`, jobs CI `agents-smoke` et `openia-agents`
|
- Scripts agents activables sans Cursor (`scripts/agents/*`), doc `docs/AGENTS_RUNTIME.md`, jobs CI `agents-smoke` et `openia-agents`
|
||||||
- Support multi‑langages pour les agents (Shell bash/Pwsh, Node.js/TS, Go, Rust, Python)
|
- Support multi‑langages pour les agents (Shell bash/Pwsh, Node.js/TS, Go, Rust, Python)
|
||||||
- Nouvelle signature `scripts/agents/run.sh [target_dir] [output_dir] [agent]` et wrapper Windows `run.ps1`
|
- Nouvelle signature `scripts/agents/run.sh [target_dir] [output_dir] [agent]` et wrapper Windows `run.ps1`
|
||||||
- Séparation documentaire: `docs/templates/**` (squelettes) et `docs/project/**` (docs du template)
|
- Séparation documentaire: `docs/templates/**` (squelettes) et `docs/project/**` (docs du template)
|
||||||
- Standards: `docs/QUALITY_STANDARDS.md`, `docs/OPEN_SOURCE_GUIDE.md`
|
- Standards: `docs/QUALITY_STANDARDS.md`, `docs/OPEN_SOURCE_GUIDE.md`
|
||||||
- Fallback PowerShell pour tous les agents (`scripts/agents/run.ps1`) et normalisation: bash recommandé, PS en secours
|
- Fallback PowerShell pour tous les agents (`scripts/agents/run.ps1`) et normalisation: bash recommandé, PS en secours
|
||||||
- CI: contrôle `bash-required` et prérequis `scripts/agents/run.sh` avant release-guard
|
- CI: contrôle `bash-required` et prérequis `scripts/agents/run.sh` avant release-guard
|
||||||
- CI: job `markdownlint` pour contrôler les lints Markdown (MD013/MD024/MD036)
|
- CI: job `markdownlint` pour contrôler les lints Markdown (MD013/MD024/MD036)
|
||||||
- CI: job `release-create` pour publier une release via l’API Gitea (secret `RELEASE_TOKEN`)
|
- CI: job `release-create` pour publier une release via l’API Gitea (secret `RELEASE_TOKEN`)
|
||||||
- Script de déploiement: `scripts/deploy/setup.sh` (provisionnement `~/.4nk_template/.env` sécurisé)
|
- Script de déploiement: `scripts/deploy/setup.sh` (provisionnement `~/.4nk_template/.env` sécurisé)
|
||||||
- Déploiement: copie étendue (.cursor, AGENTS.md, LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, TEMPLATE_VERSION, .markdownlint.json, .cursorignore, .gitignore, security/, scripts/)
|
- Déploiement: copie étendue (.cursor, AGENTS.md, LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, TEMPLATE_VERSION, .markdownlint.json, .cursorignore, .gitignore, security/, scripts/)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- Documentation projet réécrite à partir des modèles `docs/templates/**` (générique, non applicative)
|
|
||||||
|
- Documentation projet réécrite à partir des modèles `docs/templates/**` (générique, non applicative)
|
||||||
- `docs/INDEX.md` mis à jour (liens Déploiement et SSH)
|
- `docs/INDEX.md` mis à jour (liens Déploiement et SSH)
|
||||||
- Alignement documentaire sur 4NK_template (titres, liens Gitea, wording) dans docs/**
|
- Alignement documentaire sur 4NK_template (titres, liens Gitea, wording) dans docs/**
|
||||||
- Raccourcissement guides: `docs/SECURITY_AUDIT.md`, `docs/RELEASE_PLAN.md`, `docs/ROADMAP.md` (versions génériques concises)
|
- Raccourcissement guides: `docs/SECURITY_AUDIT.md`, `docs/RELEASE_PLAN.md`, `docs/ROADMAP.md` (versions génériques concises)
|
||||||
- CI: déclenchement sur tags `v*` pour la publication de release
|
- CI: déclenchement sur tags `v*` pour la publication de release
|
||||||
|
|
||||||
## [2025.08] - 2025-08-27
|
## [2025.08] - 2025-08-27
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Garde de release (règle Cursor + scripts) imposant tests/doc/build/cohérence version/changelog/tag
|
- Garde de release (règle Cursor + scripts) imposant tests/doc/build/cohérence version/changelog/tag
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- CI Gitea: ajout du job `release-guard` (contrôles pré‑push/tag)
|
- CI Gitea: ajout du job `release-guard` (contrôles pré‑push/tag)
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
### Added (suite)
|
### Added (suite)
|
||||||
|
|
||||||
- Infrastructure de tests complète avec organisation par catégorie
|
- Infrastructure de tests complète avec organisation par catégorie
|
||||||
- Scripts d'exécution automatisés pour les tests
|
- Scripts d'exécution automatisés pour les tests
|
||||||
- Documentation technique complète (Architecture, API)
|
- Documentation technique complète (Architecture, API)
|
||||||
@ -50,12 +55,14 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
- Garde de release (Cursor rule + scripts) imposant tests/doc/build/cohérence version/changelog/tag
|
- Garde de release (Cursor rule + scripts) imposant tests/doc/build/cohérence version/changelog/tag
|
||||||
|
|
||||||
### Changed (suite)
|
### Changed (suite)
|
||||||
|
|
||||||
- Réorganisation complète de la structure des tests
|
- Réorganisation complète de la structure des tests
|
||||||
- Amélioration de la documentation avec guides détaillés
|
- Amélioration de la documentation avec guides détaillés
|
||||||
- Optimisation des scripts de démarrage et redémarrage
|
- Optimisation des scripts de démarrage et redémarrage
|
||||||
- CI Gitea: ajout d’un job release-guard (contrôles pré‑push/tag)
|
- CI Gitea: ajout d’un job release-guard (contrôles pré‑push/tag)
|
||||||
|
|
||||||
### Fixed (suite)
|
### Fixed (suite)
|
||||||
|
|
||||||
- Correction des problèmes de connectivité entre services
|
- Correction des problèmes de connectivité entre services
|
||||||
- Amélioration de la gestion des erreurs dans les tests
|
- Amélioration de la gestion des erreurs dans les tests
|
||||||
- Correction des configurations Docker
|
- Correction des configurations Docker
|
||||||
@ -63,6 +70,7 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
## [1.0.0] - 2024-12-19
|
## [1.0.0] - 2024-12-19
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Infrastructure Docker complète pour 4NK Node
|
- Infrastructure Docker complète pour 4NK Node
|
||||||
- Support des paiements silencieux (Silent Payments) Bitcoin
|
- Support des paiements silencieux (Silent Payments) Bitcoin
|
||||||
- Nœud Bitcoin Core configuré en mode signet
|
- Nœud Bitcoin Core configuré en mode signet
|
||||||
@ -78,6 +86,7 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
- Documentation complète en français
|
- Documentation complète en français
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
- **Bitcoin Core** : Nœud signet avec RPC et ZMQ
|
- **Bitcoin Core** : Nœud signet avec RPC et ZMQ
|
||||||
- **Blindbit** : Service de filtres pour les paiements silencieux
|
- **Blindbit** : Service de filtres pour les paiements silencieux
|
||||||
- **SDK Relay** : Relais avec interface WebSocket et synchronisation mesh
|
- **SDK Relay** : Relais avec interface WebSocket et synchronisation mesh
|
||||||
@ -87,6 +96,7 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
- **Tests** : Suite de tests complète
|
- **Tests** : Suite de tests complète
|
||||||
|
|
||||||
### Technical
|
### Technical
|
||||||
|
|
||||||
- Architecture Docker avec orchestration via Docker Compose
|
- Architecture Docker avec orchestration via Docker Compose
|
||||||
- Réseau privé `btcnet` pour la communication inter-services
|
- Réseau privé `btcnet` pour la communication inter-services
|
||||||
- Volumes persistants pour les données
|
- Volumes persistants pour les données
|
||||||
@ -97,134 +107,159 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
## [0.9.0] - 2024-12-15
|
## [0.9.0] - 2024-12-15
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Version initiale de l'infrastructure
|
- Version initiale de l'infrastructure
|
||||||
- Configuration de base des services
|
- Configuration de base des services
|
||||||
- Tests de connectivité simples
|
- Tests de connectivité simples
|
||||||
- Documentation de base
|
- Documentation de base
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Configuration initiale des services Docker
|
- Configuration initiale des services Docker
|
||||||
- Premiers tests d'intégration
|
- Premiers tests d'intégration
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Problèmes de connectivité initiale
|
- Problèmes de connectivité initiale
|
||||||
- Configuration des ports et réseaux
|
- Configuration des ports et réseaux
|
||||||
|
|
||||||
## [0.8.0] - 2024-12-10
|
## [0.8.0] - 2024-12-10
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Support de la synchronisation entre relais
|
- Support de la synchronisation entre relais
|
||||||
- Implémentation du cache de déduplication
|
- Implémentation du cache de déduplication
|
||||||
- Types de messages de synchronisation
|
- Types de messages de synchronisation
|
||||||
- Gestionnaire de synchronisation (SyncManager)
|
- Gestionnaire de synchronisation (SyncManager)
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de l'architecture de synchronisation
|
- Amélioration de l'architecture de synchronisation
|
||||||
- Optimisation des performances de synchronisation
|
- Optimisation des performances de synchronisation
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de synchronisation
|
- Correction des problèmes de synchronisation
|
||||||
- Amélioration de la stabilité des connexions mesh
|
- Amélioration de la stabilité des connexions mesh
|
||||||
|
|
||||||
## [0.7.0] - 2024-12-05
|
## [0.7.0] - 2024-12-05
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Support des paiements silencieux
|
- Support des paiements silencieux
|
||||||
- Intégration avec le service Blindbit
|
- Intégration avec le service Blindbit
|
||||||
- Tests de paiements silencieux
|
- Tests de paiements silencieux
|
||||||
- Documentation des APIs
|
- Documentation des APIs
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de l'intégration Bitcoin Core
|
- Amélioration de l'intégration Bitcoin Core
|
||||||
- Optimisation du scan des blocs
|
- Optimisation du scan des blocs
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de détection des paiements
|
- Correction des problèmes de détection des paiements
|
||||||
- Amélioration de la performance du scan
|
- Amélioration de la performance du scan
|
||||||
|
|
||||||
## [0.6.0] - 2024-11-30
|
## [0.6.0] - 2024-11-30
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Interface WebSocket pour SDK Relay
|
- Interface WebSocket pour SDK Relay
|
||||||
- Support des messages temps réel
|
- Support des messages temps réel
|
||||||
- Tests WebSocket
|
- Tests WebSocket
|
||||||
- Documentation de l'API WebSocket
|
- Documentation de l'API WebSocket
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de l'interface WebSocket
|
- Amélioration de l'interface WebSocket
|
||||||
- Optimisation des performances de communication
|
- Optimisation des performances de communication
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de connexion WebSocket
|
- Correction des problèmes de connexion WebSocket
|
||||||
- Amélioration de la gestion des erreurs
|
- Amélioration de la gestion des erreurs
|
||||||
|
|
||||||
## [0.5.0] - 2024-11-25
|
## [0.5.0] - 2024-11-25
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Support de Tor pour l'anonymat
|
- Support de Tor pour l'anonymat
|
||||||
- Configuration du proxy Tor
|
- Configuration du proxy Tor
|
||||||
- Tests de connectivité Tor
|
- Tests de connectivité Tor
|
||||||
- Documentation de la configuration Tor
|
- Documentation de la configuration Tor
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de la configuration réseau
|
- Amélioration de la configuration réseau
|
||||||
- Optimisation de la connectivité anonyme
|
- Optimisation de la connectivité anonyme
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de connectivité Tor
|
- Correction des problèmes de connectivité Tor
|
||||||
- Amélioration de la stabilité du proxy
|
- Amélioration de la stabilité du proxy
|
||||||
|
|
||||||
## [0.4.0] - 2024-11-20
|
## [0.4.0] - 2024-11-20
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Configuration multi-relais
|
- Configuration multi-relais
|
||||||
- Support de 3 instances SDK Relay
|
- Support de 3 instances SDK Relay
|
||||||
- Tests multi-relais
|
- Tests multi-relais
|
||||||
- Documentation de la configuration multi-relais
|
- Documentation de la configuration multi-relais
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de l'orchestration Docker
|
- Amélioration de l'orchestration Docker
|
||||||
- Optimisation de la configuration multi-relais
|
- Optimisation de la configuration multi-relais
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de configuration multi-relais
|
- Correction des problèmes de configuration multi-relais
|
||||||
- Amélioration de la stabilité des instances multiples
|
- Amélioration de la stabilité des instances multiples
|
||||||
|
|
||||||
## [0.3.0] - 2024-11-15
|
## [0.3.0] - 2024-11-15
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Healthchecks pour tous les services
|
- Healthchecks pour tous les services
|
||||||
- Scripts de monitoring
|
- Scripts de monitoring
|
||||||
- Tests de santé des services
|
- Tests de santé des services
|
||||||
- Documentation des healthchecks
|
- Documentation des healthchecks
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de la surveillance des services
|
- Amélioration de la surveillance des services
|
||||||
- Optimisation des healthchecks
|
- Optimisation des healthchecks
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes de healthchecks
|
- Correction des problèmes de healthchecks
|
||||||
- Amélioration de la détection des problèmes
|
- Amélioration de la détection des problèmes
|
||||||
|
|
||||||
## [0.2.0] - 2024-11-10
|
## [0.2.0] - 2024-11-10
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Service Blindbit
|
- Service Blindbit
|
||||||
- Intégration avec Bitcoin Core
|
- Intégration avec Bitcoin Core
|
||||||
- Tests d'intégration Blindbit
|
- Tests d'intégration Blindbit
|
||||||
- Documentation du service Blindbit
|
- Documentation du service Blindbit
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Amélioration de l'intégration des services
|
- Amélioration de l'intégration des services
|
||||||
- Optimisation de la communication inter-services
|
- Optimisation de la communication inter-services
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Correction des problèmes d'intégration
|
- Correction des problèmes d'intégration
|
||||||
- Amélioration de la stabilité des services
|
- Amélioration de la stabilité des services
|
||||||
|
|
||||||
## [0.1.0] - 2024-11-05
|
## [0.1.0] - 2024-11-05
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Infrastructure Docker de base
|
- Infrastructure Docker de base
|
||||||
- Service Bitcoin Core
|
- Service Bitcoin Core
|
||||||
- Configuration de base
|
- Configuration de base
|
||||||
@ -232,10 +267,12 @@ et ce projet adhère au [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
|
|||||||
- Documentation initiale
|
- Documentation initiale
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Configuration initiale des services
|
- Configuration initiale des services
|
||||||
- Premiers tests d'intégration
|
- Premiers tests d'intégration
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Problèmes de configuration initiale
|
- Problèmes de configuration initiale
|
||||||
- Correction des problèmes de connectivité de base
|
- Correction des problèmes de connectivité de base
|
||||||
|
|
||||||
|
@ -247,7 +247,7 @@ Description de ce qui se passe actuellement.
|
|||||||
|
|
||||||
## Logs
|
## Logs
|
||||||
|
|
||||||
```
|
```text
|
||||||
Logs pertinents ici
|
Logs pertinents ici
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -258,7 +258,6 @@ Si applicable, ajoutez une capture d'écran.
|
|||||||
## Contexte Supplémentaire
|
## Contexte Supplémentaire
|
||||||
|
|
||||||
Toute autre information pertinente.
|
Toute autre information pertinente.
|
||||||
```
|
|
||||||
|
|
||||||
## 💡 Proposer une Fonctionnalité
|
## 💡 Proposer une Fonctionnalité
|
||||||
|
|
||||||
@ -288,7 +287,6 @@ Impact sur les utilisateurs et l'architecture.
|
|||||||
## Exemples d'Utilisation
|
## Exemples d'Utilisation
|
||||||
|
|
||||||
Comment cette fonctionnalité serait-elle utilisée ?
|
Comment cette fonctionnalité serait-elle utilisée ?
|
||||||
```
|
|
||||||
|
|
||||||
## 🔍 Code Review
|
## 🔍 Code Review
|
||||||
|
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
|
|
||||||
- Secrets CI uniquement (pas de secrets en clair)
|
- Secrets CI uniquement (pas de secrets en clair)
|
||||||
- Variables agents : OPENAI_API_KEY, OPENAI_MODEL, OPENAI_API_BASE, OPENAI_TEMPERATURE
|
- Variables agents : OPENAI_API_KEY, OPENAI_MODEL, OPENAI_API_BASE, OPENAI_TEMPERATURE
|
||||||
- Secret release: RELEASE_TOKEN (publication des releases via l’API Gitea)
|
- Secret release: RELEASE_TOKEN (publication des releases via l’API Gitea)
|
||||||
- Variable optionnelle: GITEA_BASE_URL (ex: `https://git.4nkweb.com`)
|
- Variable optionnelle: GITEA_BASE_URL (ex: `https://git.4nkweb.com`)
|
||||||
|
|
||||||
## Conventions
|
## Conventions
|
||||||
|
|
||||||
|
@ -1,13 +1,16 @@
|
|||||||
# Déploiement — 4NK_template (projet)
|
# Déploiement — 4NK_template (projet)
|
||||||
|
|
||||||
## Environnements
|
## Environnements
|
||||||
|
|
||||||
- Dev, staging, prod (à définir par projets consommateurs)
|
- Dev, staging, prod (à définir par projets consommateurs)
|
||||||
|
|
||||||
## Prérequis
|
## Prérequis
|
||||||
|
|
||||||
- Outils de déploiement et conteneurisation selon projet
|
- Outils de déploiement et conteneurisation selon projet
|
||||||
- Secrets fournis via CI (jamais en clair)
|
- Secrets fournis via CI (jamais en clair)
|
||||||
|
|
||||||
## Processus
|
## Processus
|
||||||
|
|
||||||
- Pré‑checks: tests/doc/sécurité/version/changelog/tag
|
- Pré‑checks: tests/doc/sécurité/version/changelog/tag
|
||||||
- Déploiement: pipeline CI dédié
|
- Déploiement: pipeline CI dédié
|
||||||
- Validation: smoke checks, santé, métriques
|
- Validation: smoke checks, santé, métriques
|
||||||
@ -36,9 +39,11 @@ bash scripts/deploy/setup.sh git@host:org/mon-projet.git --dest ~/work --force
|
|||||||
```
|
```
|
||||||
|
|
||||||
## Rollback
|
## Rollback
|
||||||
|
|
||||||
- Version précédente prête, compatibilité des données
|
- Version précédente prête, compatibilité des données
|
||||||
- Critères d’activation, procédure documentée
|
- Critères d’activation, procédure documentée
|
||||||
|
|
||||||
## Post‑déploiement
|
## Post‑déploiement
|
||||||
|
|
||||||
- Vérification santé/logs/dashboards
|
- Vérification santé/logs/dashboards
|
||||||
- Suivi des erreurs et retours
|
- Suivi des erreurs et retours
|
||||||
|
Loading…
x
Reference in New Issue
Block a user