This commit is contained in:
2026-09-20 15:32:00 +02:00
parent a9620ef84c
commit 778da67e22
8 changed files with 118 additions and 11 deletions

View File

@@ -1,8 +1,18 @@
<!-- file: CHANGELOG.md --> <!-- file: CHANGELOG.md -->
<!-- version: 13 --> <!-- version: 14 -->
# Changelog # Changelog
## 0.3.0 — 2026-09-20
- publication stable du premier POC Snake Web direct, construit autour du gameplay Rust partagé, d'un adapter WASM dédié et d'un host navigateur Vite/TypeScript ;
- validation du shell Bootstrap 5/Bootswatch + SimpleBar, du Canvas au ratio logique `12 × 20`, des contrôles clavier/pointer, du lifecycle navigateur, des assets et de la provenance runtime ;
- validation de la non-régression Desktop SDL3 et des builds release Desktop et Web/WASM ;
- promotion mécanique de `0.3.0-3-rc.1` après gate workspace complète, 34 tests réussis et absence de défaut nécessitant un correctif RC ;
- préparation de `0.3.1` pour le second host Snake Tauri Android, sans ouvrir ce scope dans la release `0.3.0`.
Les détails des phases `pre`, `beta`, `rc` et de leurs correctifs restent dans `deltas/0.3.0/` et `history/0.3.0/`.
## 0.3.0-3-rc.1 — 2026-09-20 ## 0.3.0-3-rc.1 — 2026-09-20
- gel fonctionnel du premier POC Snake Web direct après validation beta et consolidation documentaire ; - gel fonctionnel du premier POC Snake Web direct après validation beta et consolidation documentaire ;

View File

@@ -20,7 +20,7 @@ members = [
] ]
[workspace.package] [workspace.package]
version = "0.3.0-3-rc.1" version = "0.3.0"
edition = "2024" edition = "2024"
license = "MIT" license = "MIT"
repository = "https://git.sasedev.com/Sasedev/games" repository = "https://git.sasedev.com/Sasedev/games"

View File

@@ -1,5 +1,5 @@
<!-- file: README.md --> <!-- file: README.md -->
<!-- version: 39 --> <!-- version: 40 -->
# games.sasedev # games.sasedev
@@ -24,9 +24,9 @@ Workspace expérimental puis productif pour des jeux multiplateformes principale
## Baseline ## Baseline
Version stable de référence : `0.2.0`. Version stable de référence : `0.3.0`.
Version de développement : `0.3.0-3-rc.1`. Version suivante planifiée : `0.3.1` (non démarrée).
Les deux premiers jeux sont des POC structurels : `game-reflex-poc` et `game-snake-poc`. Ils existent d'abord pour valider les frontières du workspace, le moteur, les assets et le packaging multiplateforme. Les deux premiers jeux sont des POC structurels : `game-reflex-poc` et `game-snake-poc`. Ils existent d'abord pour valider les frontières du workspace, le moteur, les assets et le packaging multiplateforme.

View File

@@ -1,7 +1,7 @@
{ {
"name": "game-snake-poc-web", "name": "game-snake-poc-web",
"private": true, "private": true,
"version": "0.3.0-3-rc.1", "version": "0.3.0",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",

54
deltas/0.3.0/rel.001.md Normal file
View File

@@ -0,0 +1,54 @@
<!-- file: deltas/0.3.0/rel.001.md -->
<!-- version: 1 -->
# Delta 0.3.0 — release stable
## Base
Base validée : `0.3.0-3-rc.1`.
## Objet
Promouvoir mécaniquement la candidate validée vers `0.3.0` sans introduire de nouveau comportement.
## Changements
La release stable :
- passe `workspace.package.version` de `0.3.0-3-rc.1` à `0.3.0` ;
- passe le package frontend Web Snake de `0.3.0-3-rc.1` à `0.3.0` ;
- positionne `README.md` sur la stable `0.3.0` et indique `0.3.1` comme prochaine version planifiée mais non démarrée ;
- ajoute l'entrée stable `0.3.0` dans `CHANGELOG.md` ;
- enregistre la validation effective de la RC dans `history/0.3.0/3-rc.1.md` ;
- clôt le plan `0.3.0` et réconcilie la baseline architecturale avec l'état effectivement publié.
Les métadonnées Android et le package frontend Reflex/Tauri ne sont pas modifiés : ils n'appartiennent pas au chemin de distribution ajouté par `0.3.0`.
Le prompt `prompts/003-V0_3_1_START_PROMPT.md` est conservé tel que validé en RC.
## Frontière de release
Aucun changement de gameplay, de Rust source, de dépendance, de build frontend, d'architecture ou de capability n'est introduit après la RC.
## Validation
La gate RC complète a déjà été validée sur un état fonctionnellement identique. La promotion stable ne requiert donc que les gates proportionnelles au changement de version et à la documentation :
```bash
python3 scripts/audit_rust_workspace_rules.py
python3 scripts/audit_markdown_tables.py README.md CHANGELOG.md docs deltas history
cargo check --workspace
(cd Web/game-snake-poc && npm install && npm run build)
```
`cargo fmt`, Clippy, la suite workspace complète, `cargo tree`, l'audit de distribution et les smokes ne sont pas répétés : cette promotion ne touche ni code Rust, ni dépendance, ni layout de distribution, et ces gates ont déjà été validées sur `0.3.0-3-rc.1` fonctionnellement identique.
## Publication
Après validation de ce delta :
- commit de release ;
- tag stable `v0.3.0` ;
- prochaine session ouverte uniquement à partir de la stable taggée `v0.3.0` et de `prompts/003-V0_3_1_START_PROMPT.md`.

View File

@@ -1,11 +1,11 @@
<!-- file: docs/architecture/018-V0_3_0_WEB_SNAKE_BASELINE.md --> <!-- file: docs/architecture/018-V0_3_0_WEB_SNAKE_BASELINE.md -->
<!-- version: 1 --> <!-- version: 2 -->
# Baseline consolidée 0.3.0 — Snake Web direct # Baseline consolidée 0.3.0 — Snake Web direct
## Statut ## Statut
Ce document consolide les résultats effectivement validés du premier POC plateforme de la série `0.3.x`. Il prépare le gel RC de `0.3.0` et sert de baseline au second host Snake prévu en `0.3.1`. Ce document consolide la baseline stable `0.3.0` du premier POC plateforme de la série `0.3.x`. La RC `0.3.0-3-rc.1` a été validée sans correctif supplémentaire ; cet état sert désormais de base au second host Snake prévu en `0.3.1`.
## Chaîne validée ## Chaîne validée
@@ -84,7 +84,7 @@ Le prochain host Snake doit réutiliser cette baseline et fournir un second cas
## Témoin Desktop ## Témoin Desktop
Le runner `game-snake-poc-desktop` reste le témoin SDL3 natif. La beta `0.3.0-2-beta.1` a validé son build release et son smoke sans modification de gameplay ni de runtime SDL3. Le runner `game-snake-poc-desktop` reste le témoin SDL3 natif. La beta puis la RC `0.3.0-3-rc.1` ont validé son build release et son smoke sans modification de gameplay ni de runtime SDL3.
## Suite ## Suite

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/001-V0_3_0_WEB_SNAKE_POC_PLAN.md --> <!-- file: docs/plans/001-V0_3_0_WEB_SNAKE_POC_PLAN.md -->
<!-- version: 16 --> <!-- version: 17 -->
# Plan v0.3.0 — baseline Snake et premier POC Web direct # Plan v0.3.0 — baseline Snake et premier POC Web direct
@@ -129,9 +129,11 @@ Livraison candidate : passage des versions techniques au jalon `0.3.0-3-rc.1`, e
Gate RC : appliquer intégralement `docs/testing/004-V0_3_0_RC_VALIDATION_MATRIX.md`. Le test workspace complet est volontairement exécuté à ce jalon final ; aucun `cargo tree` n'est requis en l'absence de changement de dépendances. Gate RC : appliquer intégralement `docs/testing/004-V0_3_0_RC_VALIDATION_MATRIX.md`. Le test workspace complet est volontairement exécuté à ce jalon final ; aucun `cargo tree` n'est requis en l'absence de changement de dépendances.
Validation `3-rc.1` : les audits statiques, `cargo check --workspace`, Clippy workspace strict et la suite workspace complète passent avec 34 tests réussis. Le binaire Desktop Snake release démarre puis s'arrête proprement après 926 frames. Le build WASM release, `wasm-bindgen`, le build Vite production et `vite preview` passent également. Aucun défaut nécessitant un correctif RC n'est remonté.
### `0.3.0` — release stable ### `0.3.0` — release stable
Publication mécanique de l'état RC validé. Promotion mécanique de l'état RC validé. La release ne change ni gameplay, ni architecture, ni dépendance ; elle fixe les versions stables, ajoute l'entrée stable du `CHANGELOG.md`, enregistre la validation RC sous `history/0.3.0/3-rc.1.md` et clôt le plan `0.3.0`. Le prompt `0.3.1` reste inchangé après sa revue RC.
## Suivi et ajustements ## Suivi et ajustements

41
history/0.3.0/3-rc.1.md Normal file
View File

@@ -0,0 +1,41 @@
<!-- file: history/0.3.0/3-rc.1.md -->
<!-- version: 1 -->
# Historique 0.3.0-3-rc.1
## Statut
Validé par l'utilisateur le 2026-09-20 puis retenu pour promotion mécanique vers `0.3.0`.
## Gate workspace
La gate RC complète a passé :
- `cargo fmt --all` ;
- `cargo fmt --all -- --check` ;
- audits Rust général, exports, workspace, Markdown et distribution propres ;
- `cargo check --workspace` ;
- `cargo clippy --workspace --all-targets --all-features -- -D warnings` ;
- `cargo test --workspace --all-targets --all-features` avec 34 tests réussis et aucun échec.
## Desktop Snake release
`game-snake-poc-desktop` a été construit en `--release`, exécuté avec SDL3 puis arrêté proprement.
Le runtime observé s'est terminé après 926 frames.
## Web / WASM release
`game-snake-poc-wasm` a été construit en `--release` pour `wasm32-unknown-unknown`, puis traité avec `wasm-bindgen --target web`.
Le frontend `game-snake-poc-web` a ensuite passé :
- `npm install` sans vulnérabilité signalée ;
- `npm run build` ;
- démarrage de `npm run preview` sur `http://127.0.0.1:4174/`.
Le build Vite a copié les deux assets canoniques et produit le bundle WASM/CSS/JavaScript de release.
## Conclusion
La RC conserve le scope gelé de `0.3.0`. Aucun défaut fonctionnel, de compilation ou de packaging nécessitant un `.fix.N` n'a été remonté après la gate RC ; la promotion stable peut donc rester mécanique.