143 lines
3.9 KiB
Markdown
143 lines
3.9 KiB
Markdown
<!-- file: history/0.0.4/alpha.4.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# History 0.0.4-alpha.4 — skeleton Rust/Cargo workspace
|
|
|
|
## Statut
|
|
|
|
FAIL
|
|
|
|
La tranche `0.0.4-alpha.4` n'est pas enregistrée `PASS` telle quelle.
|
|
|
|
Le contenu documentaire, les audits PGR et l'exécution réelle de Cargo sont cohérents, mais une assertion obligatoire de la gate d'instanciation a échoué : après adaptation du template `.cargo/config.toml`, le commentaire de guidance conservait encore le placeholder littéral `project-name`.
|
|
|
|
## Baseline
|
|
|
|
La tranche précédente `0.0.4-alpha.3` a été committée et poussée sous le commit observé :
|
|
|
|
```text
|
|
5471ea6
|
|
```
|
|
|
|
Version contrôlée après application de `alpha.4` :
|
|
|
|
```text
|
|
0.0.4-alpha.4
|
|
```
|
|
|
|
Les fichiers attendus sont présents et `history/0.0.4/alpha.4.md` était absent avant cette validation.
|
|
|
|
## Contrôles réussis observés
|
|
|
|
Les `15` tests Python ont tous réussi :
|
|
|
|
```text
|
|
Ran 15 tests in 0.251s
|
|
OK
|
|
```
|
|
|
|
Les audits Markdown ont réussi :
|
|
|
|
```text
|
|
Markdown header audit: clean (111 file(s))
|
|
Markdown table audit: clean (3 table(s), 111 file(s))
|
|
Markdown link audit: clean (113 local link(s), 111 file(s))
|
|
```
|
|
|
|
L'audit structurel du skeleton Rust/Cargo a également réussi :
|
|
|
|
```text
|
|
Rust/Cargo skeleton audit: clean (alpha.1-alpha.3 PASS baseline, five templates parsed)
|
|
```
|
|
|
|
Il confirme notamment les trois skeletons attendus, les histories `alpha.1` à `alpha.3` en `PASS`, les owners `500-LANGUAGES.md` et `510-RUST_CARGO.md`, les cinq templates Rust/Cargo référencés et leur parsing TOML.
|
|
|
|
La toolchain opérateur observée est disponible :
|
|
|
|
```text
|
|
cargo 1.94.1 (29ea6fb6a 2026-03-24)
|
|
rustc 1.94.1 (e408947bf 2026-03-25)
|
|
rustfmt 1.8.0-stable (e408947bfd 2026-03-25)
|
|
clippy 0.1.94 (e408947bfd 2026-03-25)
|
|
```
|
|
|
|
Après l'assertion défectueuse, les commandes Cargo ont été exécutées sur le workspace temporaire et ont réussi :
|
|
|
|
```text
|
|
cargo metadata --format-version 1 --no-deps
|
|
cargo fmt --all -- --check
|
|
cargo check --workspace
|
|
cargo clippy --workspace --all-targets --all-features -- -D warnings
|
|
```
|
|
|
|
`cargo check` et `cargo clippy` ont tous deux terminé avec succès pour `smoke-core-lib v1.2.3`.
|
|
|
|
`git diff --check` et `git diff --cached --check` n'ont produit aucun diagnostic. Le scope Git observé avant le présent history est exactement :
|
|
|
|
```text
|
|
M README.md
|
|
M VERSION
|
|
A deltas/0.0.4/alpha.4.md
|
|
M docs/000-README.md
|
|
M docs/skeletons/000-README.md
|
|
A docs/skeletons/002-RUST_CARGO_WORKSPACE.md
|
|
```
|
|
|
|
## Défaut exact
|
|
|
|
La gate copie `templates/rust-cargo/.cargo/config.toml`, puis remplace le chemin :
|
|
|
|
```text
|
|
../builds/project-name/target
|
|
```
|
|
|
|
par :
|
|
|
|
```text
|
|
target-smoke
|
|
```
|
|
|
|
Les deux valeurs `target-dir` et `build-dir` sont donc adaptées correctement. Cependant, le template contient aussi le commentaire :
|
|
|
|
```text
|
|
# Replace project-name with a unique name before using this configuration.
|
|
```
|
|
|
|
Le script d'instanciation ne remplace pas ce commentaire, puis vérifie volontairement qu'aucun placeholder `project-name` ou `project-core-lib` ne subsiste dans les fichiers copiés. L'assertion échoue donc sur :
|
|
|
|
```text
|
|
/tmp/.../.cargo/config.toml
|
|
```
|
|
|
|
avec :
|
|
|
|
```text
|
|
AssertionError
|
|
```
|
|
|
|
Le workspace généré reste compilable, comme le montrent les commandes Cargo réussies ensuite, mais une commande obligatoire de la gate a échoué. La tranche ne peut donc pas être déclarée `PASS`.
|
|
|
|
## Décision
|
|
|
|
Aucun REPLAN n'est requis.
|
|
|
|
Le défaut appartient uniquement au smoke d'instanciation défini dans la gate de `alpha.4`. Les règles, le skeleton `002` et les cinq templates livrés restent inchangés.
|
|
|
|
La correction reste strictement locale :
|
|
|
|
```text
|
|
0.0.4-alpha.4.fix.1
|
|
```
|
|
|
|
Le delta `alpha.4` livré reste un snapshot historique et n'est pas réécrit. Le fix corrige la procédure de smoke en adaptant aussi le commentaire de `.cargo/config.toml`, puis rejoue les contrôles nécessaires.
|
|
|
|
## Résultat
|
|
|
|
`0.0.4-alpha.4` est enregistré `FAIL`.
|
|
|
|
La seule transition autorisée est :
|
|
|
|
```text
|
|
0.0.4-alpha.4.fix.1
|
|
```
|