Files
games/docs/architecture/015-PLATFORM_POC_ARCHITECTURE.md
2026-09-20 14:30:55 +02:00

48 lines
2.0 KiB
Markdown

<!-- file: docs/architecture/015-PLATFORM_POC_ARCHITECTURE.md -->
<!-- version: 2 -->
# Architecture des POC plateforme et réseau
## Rôle de la série 0.3.x
La série `0.3.x` doit éprouver les frontières décidées en `0.2.0` avant le développement Uroburas réel.
Snake est le jeu-sonde principal.
## POC plateforme prioritaires
Première vague, réordonnée à partir du résultat réel de `0.3.0` :
- Web navigateur direct + Snake — validé par `0.3.0` ;
- Tauri Android + Snake — prochain host prévu par `0.3.1` ;
- Tauri Desktop + Snake — prévu ensuite pour éprouver la factorisation WebView ;
- build Android multi-ABI avec outils natifs — tranche dédiée après les POC WebView.
Plateformes supplémentaires lorsque l'environnement existe : Windows SDL natif, macOS SDL natif et iOS SDL natif.
## POC réseau
Avant le Mode 3, comparer au minimum WebSocket/tokio-tungstenite, WebTransport/QUIC, fallback automatique, charge, reconnect/resync, backpressure, snapshots/deltas et mobilité réseau.
Le même protocole métier doit pouvoir être exercé sur plusieurs transports.
## Build
Les builds utilisent Cargo, Gradle, Tauri CLI et les toolchains plateforme.
Python reste limité aux audits, validations complémentaires et contrôles statiques.
## Critère d'extraction
Un POC sert à identifier duplication, adapters manquants, capability réellement réutilisable, frontières mal placées et coût de maintenance.
Une abstraction n'est pas extraite avant observation d'un besoin concret.
Le POC Web direct `0.3.0` n'a pas justifié d'extraire prématurément un adapter WASM commun entre Reflex et Snake : les deux adapters spécifiques restent acceptés. Le second host Snake doit d'abord fournir un second besoin réel avant toute factorisation.
## Relation avec Uroburas
Les résultats des POC `0.3.x` déterminent les choix techniques conservés pour la trajectoire Uroburas `0.4.x`.
Le POC ne doit pas réimplémenter le futur jeu ; il valide ses fondations.