Mise à jour 2.62
09/06/2026
v2.62.0BETA
Seymour
Blitzball Prize Explorer : UI Atlas dédiée en lecture seule
- Nouveau module
Modules/BlitzballPrizeExplorer(onglet Blitzball Prizes 🏐 dans le groupe Reference/RE, sans porte projet) qui consomme le catalogue déjà ferméSpiraDataAtlasCatalog.BlitzballPrizeDetails(domaineblitzball-prize) : une DataGrid recherchable avec les colonnes prize id · takara index · récompense résolue · kind · evidence, des filtres statut/evidence et kind, une bannière avec la RÈGLEprize 0..100 -> takara 220..320 -> reward(proved-candidate hors ligne), et un panneau de détail avec origine/règle/"où il apparaît"/limitations +<common:AtlasEvidenceBadgeStrip>(badges Atlas/BIBLE). Honnêteté préservée : treasure =proved-candidate(jamais RT2) ; les 64 sites de script league/tournament/event montrent explicitementblocked(le prix par événement est runtime/save) ; tech =partial; overdrive =metadata-only— rien ne passe au vert au-delà de l'étiquette actuelle. Nouveau petit accesseur en lecture seuleSpiraDataAtlasCatalog.BlitzballPrizeDetails(lazy, devwork/seulement) + 2 assertions--spiraatlas-rt0(229 rangées = 164 catalogue + 64 sites + 1 garde-fou ; vérification de domaine). Pas d'écrivain, pas de runtime ; ne touche pas RIKKU/Shop/Treasure/Alchimie, le moteurCommond'ANIMA (consommé seulement), ni Aurora/Bahamut/SIN. Build 0 erreur / 361 warning ;--spiraatlas-rt0+--aicmdmeta-rt0PASS. Doc :docs/ai/ATLAS_WAKKA_BLITZBALL_UI_RESULT_2026-06-09.md
v2.61.5
v2.62.1BETA
Seymour
value-guard item-shop SOURCE UNIQUE (supprime la dérive + corrige une mine d'opérande)
- Durcissement du value-guard item-shop : le provider lit désormais
slot_value_hexdepuis le MÊME csv (item_shop_command_crosslink.csv) qui construit le détailatlas:item-shop, au lieu d'un second fichier (item_shop_slots.csv) — valeur et détail viennent maintenant d'une seule rangée et ne peuvent pas dériver. Le pontbuild_spira_atlas_step0c_crosslinks.ps1émet désormaisslot_value_hexcomme colonne crosslink ET supprime une mine terrestre latente : le calculslot_value + 0x2000(écrit quandslot_value_hexétait vide/raw-index) calculerait maintenant0x4000parce que le parser émet la valeur encodée complète (0x2000pour Potion) → une FAUSSE jointure versAttack(une commande AI) — exactement l'erreur de catégorie que les garde-fous interdisent.item_operand_hexreste vide par design (game-index d'item ≠ opérande de commande AI). Vérifié par un workflow adversarif 3-lens (dérive/source-unique, opérande/encodage, régression/gear) —sound; 2 commentaires obsolètes corrigés. Note multi-voie : la moitié PROVIDER a été balayée dansv2.62.0(commit2bc3d7b0, voie WAKKA, ungit addconcurrent large) ; ce commit apporte la moitié BRIDGE qui rend HEAD cohérent. Gear intact. Pas de writer/UI/runtime ; pas de changement Treasure/Mix/Common/Aurora/native-menu. Build 0 erreur / 361 warning ;--spiraatlas-rt0PASS (9 assertions shop : 5 gear + 4 item) +--aicmdmeta-rt0PASS. Doc :docs/ai/ATLAS_RIKKU_ITEM_SHOP_SINGLE_SOURCE_RESULT_2026-06-09.md
v2.62.0
v2.62.1.1BETA
Seymour
lecteur/diff de sauvegarde Blitzball, lecture seule (scout RE prix-save)
- Outil CLI en lecture seule (
Tools/BlitzballSaveRead.cs+ dispatchProgram.cs) qui ouvre une sauvegarde.datet décode les 4 champs d'index de prix Blitzball (league/tournament×prize[3]/top-scorer) aux offsets dérivés RE (SaveData @file+0x40, BlitzballData @+0x1984; prix league @0x1A3C, tournament0x1A42, top-scorers0x1A48/0x1A4A), résolvant chaque valeur à sa récompense via le catalogue Atlas fermé. Modes :--blitz-save-read <save>(décodage) et--blitz-save-diff <before> <after>(comparaison de sauvegarde : prix A vs B + diff d'octets full-file, signalant les runs dans BlitzballData et décodant le u16old->new).--basesurchargeable (la base on-disk n'est pas confirmée live). Base RVA SaveData0xD2CA90confirmée par IDA (sub_785300retourneimagebase+0xD2CA90) + Fahrenheit + MemoryMap ;sub_8B5450(memcpy0x68C0depuisSaveFile+0x40) prouve le layout du fichier. 100% lecture seule : rien n'est écrit dans la sauvegarde/le jeu/RAM. Validé par un smoke-test synthétique (décodage + résolution de récompense + diff localisant le changement). Aucun changement Atlas UI / Shop/Treasure/Alchimie / Common / Aurora/Bahamut/SIN. Build 0 erreur / 361 warning. Doc :docs/ai/BLITZBALL_SAVE_RUNTIME_WRITER_SCOUT_2026-06-09.md
v2.62.1