47 lines
2.0 KiB
Markdown
47 lines
2.0 KiB
Markdown
<!-- file: docs/validation/001-VALIDATION_GATES.md -->
|
|
<!-- version: 3 -->
|
|
|
|
# Gates de validation
|
|
|
|
## Responsabilité
|
|
|
|
Les audits Python peuvent être exécutés pendant la préparation d'un delta. Sauf demande explicite contraire, les commandes Cargo finales sont exécutées par l'utilisateur sur le workspace local.
|
|
|
|
Le générateur ne marque jamais une commande Cargo comme propre s'il ne dispose que du résultat d'un delta antérieur.
|
|
|
|
## Gate canonique Rust et documentation
|
|
|
|
À exécuter par l'utilisateur pour valider chaque delta contenant du code, du build, des manifests ou des règles affectant le workspace :
|
|
|
|
```bash
|
|
cargo fmt --all -- --check
|
|
python3 scripts/audit_rust_workspace_rules.py
|
|
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates Android deltas
|
|
cargo check --workspace
|
|
cargo clippy --workspace --all-targets --all-features -- -D warnings
|
|
cargo test --workspace --all-targets --all-features
|
|
```
|
|
|
|
## Smokes Desktop
|
|
|
|
Lorsqu'un delta modifie la boucle exécutable, le runtime ou le comportement visible des runners Desktop, exécuter également :
|
|
|
|
```bash
|
|
cargo run -p game-reflex-poc-desktop
|
|
cargo run -p game-snake-poc-desktop
|
|
```
|
|
|
|
Les smokes `cargo run` ne remplacent pas la gate de tests.
|
|
|
|
## Transition vers le delta suivant
|
|
|
|
Si toutes les commandes demandées sont propres, le delta courant est validé et le travail peut passer automatiquement au prochain delta de la roadmap, sauf avis contraire de l'utilisateur.
|
|
|
|
Si une commande échoue, ne pas avancer de prerelease. Produire un correctif du delta courant, par exemple `0.1.0-0-pre.3.fix.1`, puis rejouer la gate demandée.
|
|
|
|
## Android et Web
|
|
|
|
Le build Android n'est pas encore une gate : le projet Gradle exécutable et l'intégration SDL3/NDK restent planifiés pour une prerelease dédiée. Dès leur introduction, les tâches ciblées par module sont documentées avant d'être rendues obligatoires.
|
|
|
|
La cible Web suit la même règle : aucune gate Web n'est inventée avant l'existence de son build réel.
|