158 lines
6.4 KiB
Markdown
158 lines
6.4 KiB
Markdown
<!-- 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 qu’un 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 l’interpréteur courant et `-B`, afin que la gate standard reste effectivement en lecture seule malgré l’import effectué dans l’audit 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.
|