Files
games/CHANGELOG.md
2026-09-22 12:00:49 +02:00

14 KiB
Raw Blame History

Changelog

0.3.5-rc.1 — 2026-09-22

  • gel de la seconde implémentation realtime autour de game-realtime-webtransport-lib, conservée comme backend WebTransport/QUIC supplémentaire tandis que game-realtime-websocket-lib reste la baseline et le fallback de référence ;
  • établissement natif QUIC/HTTP3 avec TLS et pin SHA-256 exact, stream bidirectionnel fiable compatible RealtimeConnection, deadlines/cancellation bornées et client navigateur/WASM WebTransport réel validé contre le serveur Rust natif ;
  • composition WebTransport-first validée sans manager générique : fallback WebSocket limité aux erreurs classifiées Timeout/Io, avec les erreurs ambiguës ou de configuration laissées visibles ;
  • datagrams WebTransport conservés comme capacité backend-spécifique, non fiable et non ordonnée, avec taille maximale négociée et sans extension du contrat fiable commun ;
  • caractérisation loopback bornée de l'établissement, du RTT, de plusieurs patterns de throughput et des datagrams ; ces mesures décrivent les wrappers locaux et ne constituent ni un classement général des transports ni une prédiction Internet/mobile ;
  • validation large beta.1 avec 77 tests workspace, smokes natifs WebSocket/WebTransport/datagram/fallback, builds WASM/frontend et smoke navigateur réel ; cross-compilation du backend WebTransport validée pour Android ARM64/API 21 avec NDK 28.2.13676358, sans prétendre à un smoke runtime Android WebTransport ;
  • consolidation beta.2 des README/USAGE et architectures, décision retained figée pour WebTransport, et préparation du prompt 0.3.6 pour réconcilier les POC 0.3.x avant Uroburas 0.4.x ;
  • aucun codec wire métier final, protocole session joueur/room, reconnect/resync, synchronisation gameplay, prediction/reconciliation, matchmaking ou simulation authoritative n'est introduit par 0.3.5.

La RC n'ouvre aucun nouveau scope. Seuls les correctifs nécessaires à la publication selon VER-RC-* peuvent produire 0.3.5-rc.1.fix.N.

0.3.4 — 2026-09-21

  • publication stable de la première baseline realtime, avec game-realtime-transport-lib comme contrat binaire transport-neutral et game-realtime-websocket-lib comme backend Tokio/tokio-tungstenite ;
  • client ws://, listener serveur, split send/receive, close propre, limites message/frame/write-buffer, deadlines connect/send/close et erreurs transport-neutral validés sans runtime ni task backend privé ;
  • robustesse validée par tests loopback et négatifs : payloads hors limite, Text interdit, peer drop abrupt, handshake silencieux borné et mappings capacité/backpressure ;
  • smoke runtime game-realtime-websocket-smoke: PASS validé hors harness de test sur localhost avec port éphémère, échange binaire bidirectionnel et fermeture propre ;
  • 0.3.4-beta.1 a validé le workspace complet avec 53 tests et l'arbre inverse a confirmé que seul le launcher de smoke dépend du backend WebSocket ; 0.3.4-rc.1 a ensuite repassé audits, check/Clippy, 18 tests realtime ciblés, smoke et frontière de dépendances sans défaut ;
  • documentation durable des deux crates realtime livrée et prompt 0.3.5 préparé pour évaluer WebTransport/QUIC sur la même frontière avec WebSocket comme baseline/fallback ;
  • aucun TLS direct, wire codec final, protocole session, synchronisation gameplay, simulation authoritative ou serveur Uroburas n'est introduit dans 0.3.4.

Les détails des phases alpha, beta, rc et du correctif alpha.3.fix.1 restent dans deltas/0.3.4/ et history/0.3.4/.

0.3.4-rc.1 — 2026-09-21

  • gel fonctionnel de la baseline realtime : game-realtime-transport-lib porte le contrat binaire transport-neutral et game-realtime-websocket-lib son backend Tokio/tokio-tungstenite, sans dépendance transport dans les moteurs ou le gameplay ;
  • client ws://, listener serveur, split send/receive, close propre, erreurs transport-neutral, limites de message/frame/write-buffer et deadlines connect/send/close validés sans runtime ni task backend privé ;
  • robustesse validée sur localhost : round-trip binaire, payload hors limite, Text interdit, peer drop abrupt, handshake silencieux borné, mappings capacité/backpressure et smoke runtime public game-realtime-websocket-smoke: PASS ;
  • 0.3.4-beta.1 validée avec audits propres, cargo check, Clippy strict et cargo test --workspace --all-targets --all-features : 53 tests réussis, puis smoke runtime séparé et arbre inverse confirmant que seul le launcher de smoke dépend du backend WebSocket ;
  • consolidation de la documentation durable des deux crates realtime et préparation du prompt 0.3.5 pour évaluer WebTransport/QUIC sur la même frontière, avec WebSocket conservé comme fallback de référence ;
  • aucun TLS direct, protocole de session, synchronisation gameplay, simulation authoritative ou serveur Uroburas n'est introduit dans 0.3.4.

La RC n'ouvre aucun nouveau scope. Seuls les correctifs nécessaires à la publication selon VER-RC-* peuvent produire 0.3.4-rc.1.fix.N.

0.3.3 — 2026-09-21

  • publication stable du pipeline Android SDL3 natif multi-ABI possédé par Gradle/Cargo, sans orchestrateur Python de build ni src/main/jniLibs généré dans les sources ;
  • APK Debug universal et AAB Release produits pour arm64-v8a, armeabi-v7a, x86_64 et x86, avec minSdk 21 conservé et fumé sur Android 5.0/API 21 x86 ;
  • compatibilité pages mémoire 16 KB validée pour les ABI 64 bits : zipalign -P 16, segments ELF align 2**14 et smoke API 35 x86_64 ps16k avec PAGE_SIZE=16384 ;
  • smokes finaux Snake et Reflex validés sur AVD API 36 x86_64 et Samsung API 29 ARM64, avec installation réussie, activité lancée, processus vivant et aucune entrée crash remontée ;
  • environnement Android natif validé avec JDK courant et Gradle système >= 9.6.0, sans wrapper Gradle ni JAVA_HOME imposé au projet ;
  • préparation de 0.3.4 pour l'API de transport realtime/WebSocket et pour la nouvelle nomenclature prospective alpha.M / beta.M / rc.M, sans aucune réécriture des anciens deltas/, history/, prompts ou entrées historiques.

Les détails des phases pre, beta, rc et de leurs correctifs restent dans deltas/0.3.3/ et history/0.3.3/.

0.3.3-3-rc.1 — 2026-09-21

  • gel fonctionnel du pipeline Android SDL3 natif désormais possédé par Gradle/Cargo, sans orchestrateur Python de build ni src/main/jniLibs généré dans les sources ;
  • APK Debug universal et AAB Release validés pour arm64-v8a, armeabi-v7a, x86_64 et x86, avec minSdk 21 conservé ;
  • compatibilité pages mémoire 16 KB validée sur les ABI 64 bits, y compris smoke Android 15/API 35 x86_64 ps16k avec PAGE_SIZE=16384 ;
  • smoke Android 5.0/API 21 x86 validé, puis smokes beta Snake et Reflex validés sur AVD API 36 x86_64 et Samsung API 29 ARM64 sans crash immédiat ;
  • environnement Android natif validé avec Temurin 25 et Gradle système 9.7.1, le projet imposant seulement Gradle >= 9.6.0 ;
  • prompt 0.3.4 préparé pour l'API de transport realtime/WebSocket et pour la migration de nomenclature à alpha.M, beta.M, rc.M à partir de la prochaine session uniquement ; aucun historique antérieur ne sera renommé ou réécrit.

La RC n'ouvre aucun nouveau scope. Seuls les correctifs de publication autorisés par VER-RC-* peuvent produire un 3-rc.1.fix.N.

0.3.1 — 2026-09-21

  • publication stable du second host Snake sous Tauri Android, conservé comme POC de référence et non comme voie de production Android ;
  • validation du gameplay partagé via game-snake-poc-wasm, du Canvas, des contrôles tactiles, des assets, du lifecycle mobile/WebView, du tracing et de la provenance runtime ;
  • validation dun APK Debug universal autonome contenant arm64-v8a et x86_64, installé et lancé sur Galaxy S9+ ARM64 réel et AVD API 36 x86_64 ;
  • validation finale de 0.3.1-3-rc.1 sans défaut nécessitant un correctif RC, puis promotion mécanique vers la stable ;
  • maintien de 0.3.2 en différé et préparation de 0.3.3 pour Android SDL3 natif multi-ABI, APK universal de test, AAB de distribution et évaluation du minSdk.

Les détails des phases pre, beta, rc et de leurs correctifs restent dans deltas/0.3.1/ et history/0.3.1/.

0.3.1-3-rc.1 — 2026-09-21

  • gel fonctionnel du POC Snake Tauri Android de référence après validation beta du workspace complet et du packaging Android autonome ;
  • APK Debug universal construit avec les cibles Rust aarch64-linux-android et x86_64-linux-android, puis installé et lancé avec succès sur Galaxy S9+ ARM64 et AVD API 36 x86_64 ;
  • host Tauri conservé comme POC comparatif : la voie Android productive reste SDL3 natif/Java/JNI ;
  • absence dextraction Web/Tauri supplémentaire et absence dAAB Tauri volontaire : les choix de distribution Android productive sont reportés au POC SDL3 natif ;
  • 0.3.2 Tauri Desktop reste différée faute de bénéfice produit/monétisation démontré ; la prochaine version active préparée est 0.3.3, Android SDL3 natif multi-ABI, avec AAB et compatibilité Android ancienne à évaluer.

La RC nouvre aucun nouveau scope. Seuls les correctifs de publication autorisés par VER-RC-* peuvent produire un 3-rc.1.fix.N.

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

  • gel fonctionnel du premier POC Snake Web direct après validation beta et consolidation documentaire ;
  • gameplay Snake conservé dans game-snake-poc, avec adapter game-snake-poc-wasm dédié et host navigateur Vite/TypeScript séparé ;
  • shell Web responsive fondé sur Bootstrap 5/Bootswatch, SimpleBar et Canvas au ratio logique du jeu, avec clavier et contrôles pointer/tactiles ;
  • lifecycle navigateur fixed-step sans rattrapage massif, resize devicePixelRatio, assets common/ + game/, logging frontend structuré et provenance Web / Browser / Wasm ;
  • runner Desktop SDL3 maintenu comme témoin de non-régression et builds release Desktop/Web déjà exercés pendant la beta ;
  • prompt 0.3.1 préparé pour le second host Snake Tauri Android, avec workflow de session, commandes et validations consolidés.

La RC n'ouvre aucun nouveau scope. Les détails des phases pre, beta et de leurs correctifs restent dans deltas/0.3.0/ et history/0.3.0/.

0.2.0 — conception modulaire, POC et Uroburas

  • Gouvernance documentaire renforcée : catégories ideas/studies/architecture/rules, immutabilité des deltas, conventions de statuts et workflow de session/version.
  • Architecture durable séparant engine kernel, technical capabilities, game-systems, games, platform adapters, providers, server services et tooling.
  • Trajectoire POC 0.3.x définie avec Snake comme jeu-sonde pour SDL, Web/WASM, Tauri et transports realtime.
  • Architecture réseau de référence : Actix Web/Maud/Fluent/Lettre pour Web/API, WebSocket/tokio-tungstenite baseline, WebTransport/QUIC candidat, gRPC/Tonic conditionnel server-to-server.
  • Asset delivery auto-hébergé, compatible HTTP/2 et HTTP/3 selon disponibilité, avec séparation logique puis physique progressive.
  • Cible d'exploitation préférée : Debian Stable, actuellement Debian 13 trixie, sans dépendance métier à une version précise.
  • Spécification fonctionnelle et architecture cible initiales de Uroburas, avec ordre Mode 1 Challenge → Mode 3 Persistent Battle Royale → Mode 2 PvP Battles.
  • Classification des besoins Uroburas afin d'éviter une crate jeu monolithique.
  • Première trajectoire Uroburas réservant grid/tilemap toroïdale, obstacles, stages, vies, score, caméra, assets téléchargeables, auth, rewarded ads, Hall of Fame et échanges client/serveur sécurisés/versionnés.

0.1.0 — 2026-09-17

  • validation de 0.1.0-3-rc.1.fix.1 avec gates Rust/audits complètes, builds et smokes Desktop release, Tauri/WASM, Android x86_64/API 36 et Android ARM64 réel ;
  • stabilisation d'une première baseline POC multi-plateforme fondée sur un core de gameplay Rust réutilisé par des runners SDL3 Desktop/Android et un POC Tauri/WebView/WASM ;
  • validation de l'abstraction d'input, du rendu 2D minimal, des assets, de la provenance runtime, du tracing commun et du lifecycle/Back Android ;
  • clôture du cycle POC 0.1.0 sans ajout fonctionnel de dernière minute ;
  • réservation de la direction 0.2.0 pour concevoir progressivement le framework modulaire avant toute extension fonctionnelle majeure.

0.1.0-3-rc.1 — 2026-09-17

  • validation de 2-beta.1.fix.4 sur Desktop SDL3 natif, Tauri/WASM, Android AVD x86_64 et Galaxy S9+ ARM64 ;
  • validation du logging Android vers logcat et du Back système Android 16 via observer non consommant ;
  • clôture de la phase beta et gel fonctionnel du socle 0.1.0 ;
  • entrée en phase RC centrée sur la reproductibilité des builds de release, les artefacts de distribution et la documentation de livraison ;
  • ajout d'une matrice RC et d'une gate workspace complète avant promotion vers 0.1.0.

Les détails des phases pre, alpha, beta et de leurs correctifs sont conservés dans deltas/0.1.0/ et history/0.1.0/.