Files
games/deltas/0.3.0/0-pre.1.md
2026-09-20 06:15:50 +02:00

158 lines
6.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: deltas/0.3.0/0-pre.1.md -->
<!-- version: 1 -->
# Delta 0.3.0-0-pre.1
## Base
Base déclarée : `0.2.0`.
L'archive de base a été inspectée avant modification. Sa version workspace est `0.2.0`. L'archive ne contient pas `.git`, donc le tag réel et la propreté Git ne peuvent pas être vérifiés dans l'environnement de génération.
## Objet
Ouvrir `0.3.0` par le cadrage obligatoire : audit réel de la baseline, revue des règles, requirements Snake, graphe de dépendances, choix du premier POC, sizing corrigé et préparation des validations.
Aucun gameplay, runtime SDL, Java/JNI, Tauri ou frontend existant n'est modifié dans cette tranche.
## Version
La version workspace passe de :
```text
0.2.0
```
à :
```text
0.3.0-0-pre.1
```
Les métadonnées Android restent à `0.2.0` dans cette tranche, car le chemin Android natif n'est ni modifié ni construit par le premier POC Web. Elles seront réévaluées dans la version qui réouvre effectivement ce produit Android.
## Audit de baseline
Les audits statiques officiels ont été exécutés avant modification et étaient propres :
```text
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
games.sasedev workspace audit: clean
Markdown table audit: clean (4 table(s), 158 file(s))
Distribution layout audit: clean (19 required path(s), 1 forbidden path(s) absent)
```
La revue manuelle a néanmoins détecté :
- README encore positionné sur `0.1.0` stable / `0.2.0` candidate ;
- quatre lignes `( )` sous la stable `0.2.0` dans ROADMAP, en violation de `DOC-RMAP-010` ;
- la gate `audit_rust_workspace_rules.py` qui créait un cache Python `.pyc` pendant son exécution, alors quun audit doit rester en lecture seule ;
- `CMD-RC-001` encore spécifique à `0.1.0` ;
- contradiction entre `CMD-BUILD-002` (interdiction globale) et `CMD-BUILD-004` (remplacement progressif en `0.3.x`), alors que deux orchestrateurs Python historiques existent encore ;
- `CMD-WEB-003` décrivant sans contexte le build Python Tauri/WASM historique ;
- dépendances `engine-v1-platform-api` déclarées mais non utilisées par les crates de jeu ;
- `RuntimeProvenance` défini mais non branché aux launchers ;
- `game-assets-lib` encore sans consommateur runtime ;
- deux orchestrateurs Python de build historiques à ne pas réutiliser dans les nouveaux POC.
Les détails et le graphe complet sont documentés dans `docs/studies/023-V0_3_0_PLATFORM_POC_AUDIT.md`.
## Corrections de règles et hygiène
Cette tranche :
- corrige le README de version ;
- ferme correctement le scope `0.2.0` dans ROADMAP ;
- distingue ce qui a été livré de ce qui est reporté ;
- rend `CMD-RC-001` générique à la version courante ;
- rend `CMD-BUILD-002` cohérente avec la migration `0.3.x` : les deux orchestrateurs Python historiques sont gelés jusquà réactivation de leur chemin, mais aucun nouveau chemin ne peut les reprendre ;
- qualifie explicitement `scripts/build_reflex_tauri_wasm.py` de mécanisme historique non réutilisable comme orchestration `0.3.x` ;
- renforce `audit_project_workspace_rules.py` pour détecter le scope `( )` restant sous une version stable présente dans CHANGELOG ;
- fait exécuter les sous-audits de `audit_rust_workspace_rules.py` avec linterpréteur courant et `-B`, afin que la gate standard reste effectivement en lecture seule malgré limport effectué dans laudit de complétude des exports.
## Premier POC retenu
Le premier host de `0.3.0` devient :
```text
Web navigateur direct + Snake
```
Tauri Android est reporté au second host, actuellement prévu en `0.3.1`.
Le but est de valider d'abord la frontière Web/WASM et les capabilities directement observables sans cumuler simultanément la généralisation Snake/WASM et la complexité d'un host mobile Tauri.
## Forecast corrigé
```text
0-pre.1 audit / règles / requirements / sizing
0-pre.2 Snake portability baseline
0-pre.3 adapter Snake WASM + build natif Web
0-pre.4 navigateur direct end-to-end
0-pre.5 seulement si un défaut réel est observé
2-beta.1 validation large
3-rc.1 candidate gelée
0.3.0 release mécanique
```
Aucune alpha n'est créée par cérémonial. Elle reste possible si le volume réel de stabilisation le justifie.
## Scope exclu de 0.3.0
- Tauri Android ;
- Tauri Desktop Snake ;
- Android multi-ABI natif ;
- réseau realtime ;
- WebTransport/QUIC ;
- Uroburas ;
- ads, billing, auth et leaderboard ;
- ECS ou nouveau moteur.
## Suppressions
Aucune suppression de fichier appartenant à la baseline `0.2.0` n'est nécessaire.
## Validations exécutées dans l'environnement de génération
Après constitution de l'état livré, les audits statiques suivants doivent être réexécutés et leur résultat est enregistré avant packaging :
```bash
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 history
python3 scripts/audit_distribution_layout.py
```
Aucun build/test/smoke n'est exécuté par le générateur, conformément à `CMD-GEN-007` et `CMD-BUILD-005`.
## Validation utilisateur demandée
Cette tranche ne modifie aucun source Rust/Java/TypeScript ni aucune configuration runtime. Elle ouvre toutefois une nouvelle version `0.3.0` et modifie le manifest workspace ; la gate utilisateur retient donc les audits statiques puis une gate Cargo workspace complète, conformément à la discipline des frontières de version :
```bash
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 history
python3 scripts/audit_distribution_layout.py
cargo fmt --all -- --check
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-targets --all-features
```
Aucun build de distribution, smoke Desktop, Tauri ou Android n'est requis par `pre.1`, car aucun runtime ni packaging de ces hosts n'est modifié.
La revue humaine doit confirmer :
- le choix Web direct comme premier POC ;
- le scope corrigé de `0.3.0` ;
- le report de Tauri Android vers le second host ;
- le sizing `pre.2` à `pre.4` ;
- la fermeture correcte des lignes historiques `0.2.0`.
## Suite après validation
Si cette gate est propre et le cadrage accepté, passer automatiquement à `0.3.0-0-pre.2`.
`pre.2` doit rester une tranche bornée de portabilité Snake et de nettoyage de dépendances ; elle ne doit pas commencer le frontend Web complet.