Files
games/deltas/0.3.0/0-pre.2.md
2026-09-20 06:53:40 +02:00

3.5 KiB

Delta 0.3.0-0-pre.2

Base

Base requise : 0.3.0-0-pre.1.fix.2.

Les validations utilisateur de 0-pre.1.fix.1 et 0-pre.1.fix.2 sont consignées sous history/0.3.0/ conformément au workflow documentaire.

Objet

Fermer la baseline Snake portable avant l'introduction de l'adapter WASM :

  • retirer des crates de gameplay les dépendances plateforme déclarées mais inutilisées ;
  • confirmer que le gameplay Snake ne consomme que les contrats moteur indépendants de la plateforme ;
  • documenter le contrat minimal que le futur host Web devra adapter sans introduire encore de code WASM ou frontend.

Version

La version workspace passe de 0.3.0-0-pre.1.fix.2 à 0.3.0-0-pre.2.

Nettoyage des dépendances

engine-v1-platform-api est retiré de :

  • game-snake-poc ;
  • game-reflex-poc.

Ces deux crates n'utilisent aucun symbole de cette dépendance. Les launchers et adapters qui utilisent réellement des capacités plateforme conservent leur dépendance.

Ce nettoyage ne déplace aucune responsabilité et ne change aucun comportement de gameplay.

Contrat Snake portable

La baseline confirmée pour Snake est :

  • état et update via EngineGame ;
  • entrée via InputState ;
  • actions de gameplay utilisées : Left, Right, Up, Down ;
  • rendu abstrait via EngineScene ;
  • aucune dépendance SDL3, Web/DOM/Canvas ou engine-v1-platform-api dans game-snake-poc.

Le host reste responsable de traduire ses périphériques ou widgets en actions logiques. Le futur adapter WASM 0-pre.3 doit réutiliser cette frontière sans créer un modèle Web parallèle.

Historique des validations précédentes

Ajout de :

  • history/0.3.0/0-pre.1.fix.1.md ;
  • history/0.3.0/0-pre.1.fix.2.md.

Ces fichiers enregistrent uniquement les résultats effectivement fournis par l'utilisateur : audits statiques, cargo fmt --all -- --check et cargo check --workspace. Aucun Clippy, test ou smoke non exécuté n'est déclaré validé.

Fichiers ajoutés

  • deltas/0.3.0/0-pre.2.md ;
  • history/0.3.0/0-pre.1.fix.1.md ;
  • history/0.3.0/0-pre.1.fix.2.md.

Fichiers modifiés

  • Cargo.toml ;
  • README.md ;
  • crates/games/game-reflex-poc/Cargo.toml ;
  • crates/games/game-snake-poc/Cargo.toml ;
  • docs/architecture/004-INPUT_AND_CONTROLS.md ;
  • docs/plans/001-V0_3_0_WEB_SNAKE_POC_PLAN.md.

Suppressions

Aucune.

Validations applicables

Audits statiques de préparation :

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

Validation utilisateur demandée :

cargo fmt --all -- --check
cargo check --workspace
cargo clippy -p game-snake-poc --all-targets --all-features -- -D warnings
cargo clippy -p game-reflex-poc --all-targets --all-features -- -D warnings
cargo test -p game-snake-poc
cargo test -p game-reflex-poc
cargo tree -p game-snake-poc --edges normal
cargo tree -p game-reflex-poc --edges normal

Les deux cargo tree doivent confirmer que les crates de gameplay ne tirent plus engine-v1-platform-api. Aucun smoke Desktop n'est requis : ni engine-v1-sdl, ni le mapping SDL, ni le runner Snake ne sont modifiés dans cette tranche.

Suite

Après validation de 0-pre.2, ouvrir 0-pre.3 pour l'adaptation WASM minimale de Snake conformément au plan actif. Aucun frontend Bootstrap/Vite n'est introduit avant 0-pre.4.