Record Sanctuary sources through beta.060 and Git validation
Build Sanctuary / build (push) Canceled after 0s

This commit is contained in:
koka
2026-09-15 09:29:11 +02:00
parent 1490fb2a80
commit e13f3cc1b8
1372 changed files with 92055 additions and 212 deletions
+51
View File
@@ -0,0 +1,51 @@
# beta.052 — nom du familier de départ
Branche `codex/starter-name-beta052`. Contrat avant modification : Hello World
ajoute un champ « Nom du familier » sous les trois œufs centrés. Le libellé reste
aligné aux autres champs. Le nom est facultatif, limité à 32 caractères, sans
codes de mise en forme ni caractères de contrôle. Un champ vide conserve le nom
natif de l'espèce. Le serveur valide puis enregistre ensemble l'espèce et le nom
avant l'introduction. L'œuf reçoit le composant natif CUSTOM_NAME : le familier,
sa fiche et les renommages ultérieurs utilisent le fonctionnement déjà en place.
## Contrat de migration
Le registre `data/sanctuary-starters.json` passe du schéma 1 au schéma 2 : chaque
offre gagne `name`, vide pour les anciennes entrées. La lecture ne réécrit rien.
À la première modification, l'ancien fichier valide est conservé à l'identique
dans `sanctuary-starters.json.schema1.bak` avant l'écriture atomique du schéma 2.
Un fichier invalide ou une sauvegarde incompatible bloque l'écriture, sans remise
à zéro. Les choix, UUID, graines et reçus de remise restent identiques ; aucun
cadeau ni renommage rétroactif. Pour revenir à beta.051, conserver le registre 2
puis restaurer la sauvegarde 1 ; les choix faits depuis la migration seraient
alors perdus. Aucun monde personnel n'est ouvert ou migré pendant ces travaux.
Un nouveau message de configuration `sanctuary:starter_named_create_v1`
transporte le nom ; les anciens messages gardent leur format. Les clients
anciens peuvent encore créer un familier sans nom personnalisé sur ce serveur.
La saisie reste lors d'un redimensionnement ou d'un refus de couleur ; après
validation, reconnexion et introduction interrompue conservent le choix nommé.
## Vérifications
`./gradlew check build assemblePack assembleTestPack` avec
`-PsanctuaryFocusedTests=starter052,starter -PsanctuaryQuickTests=true` : succès,
**8 tests serveur**. Migration 1 → 2 et sauvegarde originale vérifiées, refus des
noms invalides sans mutation, choix définitif idempotent, sérialisation du
message, nom natif sur l'œuf et l'entité, renommage ultérieur préservé. Les tests
du tirage, de la remise unique, de la mort et du prestige restent réussis.
`runClientGameTest` avec `-PsanctuaryClientTests=true
-PsanctuaryStarterNameClientTests=true -PsanctuaryQuickTests=true` : succès.
Hello World à froid sans joueur ni monde, FR/EN, interfaces 854 × 480 et
427 × 240, saisie conservée lors du redimensionnement et d'un refus de couleur,
admission réelle sur serveur intégré, nom dans la fiche habitant, sauvegarde et
reconnexion sans nouvel œuf. Captures relues : `build/starter052-evidence/`.
Journaux : `build/starter052-delivery.log`, `build/starter052-client.log`.
Reçu : `build/starter052-artifact.json` ; 1 535 classes et ressources conformes
au build. Archives beta.051, textures, JEI et données de génération préservés.
[Pack normal](../build/Sanctuary-beta.052.mrpack) ·
[Monde plat rapide](../build/Sanctuary-Test-beta.052.mrpack).
Connexion à plusieurs clients distants restant à vérifier. Aucun déploiement
sur le canal public ou l'instance personnelle.