Mise à jour 2.193
31/07/2026
v2.193.0.0BETAMINOR
Seymour31 juil. 2026
Pipeline d'authoring Core : contrats de capacité + exécuteur d'opérations gardées + adaptateurs d'écrivains (126/126 tests)
- P0-A — Primitives de sûreté de workspace (
FFXProjectEditor/Core/) :CapabilityDescriptor,PathGuard,WorkspaceHealthCheck(6 fichiers Core, 22 tests).PathGuardbloque le path traversal et les écritures hors de la racine ;WorkspaceHealthCheckvalide l'intégrité du workspace avant toute opération ;CapabilityDescriptordéclare ce que l'éditeur peut faire étant donné le workspace actuel. - P0-B — Opérations d'édition gardées (
FFXProjectEditor/Core/+Core/Writers/) :OperationPlan,OperationExecutor,IWriterAdapter,MonsterStatSheetAdapter,TreasureAdapter,MonsterFileAdapter,WriterAdapterCatalog,EditSession,ValidationPipeline,ReceiptBuilder(9 fichiers Core, 11 tests). PipelineValidate -> Snapshot -> Plan -> Stage -> Verify -> Backup -> Promote -> Receipt; round-trips d'identité d'octets dans les adaptateurs avec les fixtures vanillam000.bin/m001.bin. MonsterFileAdapter(adaptateur conteneur complet) : adapteMonster_File.Write()àIWriterAdapteravec des clés namespacéesStat.*(stat sheet),Loot.*(entrées de loot) etMetadata.*(Signature + blobs bruts AiFile/WorkerFile/UnkFile/AudioFile/TextFile via byte[]/base64). Couvert par 5 tests (MonsterFileAdapterTests) : identité d'octets RT0 no-edit, édition de stats, édition de loot, édition deMetadata.Signature, et tri validate/describe. Enregistré dansWriterAdapterCatalog(CapabilityIdmonster-file, Risque Modéré).- P1 — DTOs de pont UI :
UiBridge.cs(pont entre Core et la couche Avalonia). - 4 specs :
docs/ai/contracts/CAPABILITY_DESCRIPTOR_SPEC.md(Jarvis-TIDUS),docs/ai/contracts/OPERATION_PLAN_SPEC.md(Jarvis-RIKKU),docs/ai/contracts/WRITER_MAP.md(Jarvis-KIMAHRI) etdocs/ai/PROMPT_GEMINI_UI_UX_REWRITTEN_2026-07-31.md. - Tests : 64 → 126 (+96,9 %) ;
dotnet testdeFFXProjectEditor.Tests126/126 PASS (identité d'octets RT0 round-trip ; fixtures dansFFXProjectEditor.Tests/Fixtures/). - Intégration essaim Cline :
scripts/cline-swarm.sh— 6 workers Cline parallèles réels (1 clé par worker, modèlecline-pass/deepseek-v4-flash,--auto-approve,--thinking xhigh) + agents Verboo (PROMPT_DEEPSEEK_V4_PRO_COMPETITIVE_EXECUTION_2026-07-31.md,PROMPT_GEMINI_UI_UX_COMPETITIVE_EXECUTION_2026-07-31.md). - Dette de versionnage PAYÉE dans cette passe : bump 4 champs de
FFXProjectEditor.csprojà2.193.0.0+ entrée ici + ligne dansVERSIONING.md.
v2.192.1.0
v2.193.0.1BETAREVISION
Seymour31 juil. 2026
MAGIC PPP : trilogie U1 T4 complète + chaîne de Draw décodée + RTTI hors ligne + toolchain reconstruite
- Trilogie U1 T4 (Emousse,
magic_0021.dll, vanilla restauré à la fin) :pppScale(record 0x1A690, 42,5→2,0) = cast plus lent → accumulateur d'os par frame ;pppAngle(0x19E90) = rotation ET échelle changées ;pppAngAccele(0x1C0C0, mis à zéro) = suivi d'objectif/cible désactivé (le contrôle d'Trépan continuait de viser normalement). 3/3 PASS visuels, zéro crash, backups.pre-t4-*préservés. - Sémantique U1 : les handlers appartiennent au système
FFX_BoneAnim(14 fonctions 0x75C2A0–0x75D8B0 ; pppScale=0x75D0D0FFX_BoneAnim_ApplyDeltaFloat4_B) — deltas de transformation os/hiérarchie, pas des particules libres. - Chaîne de Draw décodée (hors ligne) :
pppDrawMdl(0x737830) →FFX_PppResourceDescriptorTablePtr(0xC3A4C4, entrées 32B) →FFX_TextureSlotCacheState(0xCCCA64) viaPhyre_Map_LowerBound(PpMap) →AllocVfxParticleSlots; table peuplée parFFX_MagicHost_InitObjectBuffer(0x925210). 7 renames appliqués sur la base COPY — à propager vers la canonique. - Walker RTTI Phyre hors ligne déverrouillé : 259 classes/747 membres extraits statiquement (
Phyre_PClassDataMember_ctorAttach_structural) ; arg6 = DRAPEAUX, pas la taille (catalogue corrigé) ;STRUCT_CATALOG_V3(29/56 couverts, 120 champs, 164 nouvelles classes). - Toolchain ppp reconstruite (régression 31-07 08:07 corrigée) :
family_schema.py(DIRECT_OPERAND_SCHEMAS+EffectLocalPppRegistry) +useful_ppp_writer.py(validate_effect_local_candidate/dry_run_vector_for_effect) + nouveauscripts/phyre_rtti_extractor.py— 214/214 tests PASS. - Preuves 07-16 restaurées dans le worktree (Death T1/T2 ×3 familles, T3 copy-only ×3, 80+ manifestes, audits/fixtures) + runbook runtime (498 lignes) + état de session.
- Actifs : PhyreEngine 3.1.5 (canonique de l'ère FFX HD) + 3.21 ; SDK PS3 3.60 actif + 3.70 extrait manuellement de l'installateur SFX (
ffx-reconstructed\EnginesExtras\PS3_SDK_370\). - Bloqueur : la baseline de sonde 16-07 (
4010F974) n'a pas de backup binaire → captures T1/T2 bloquées jusqu'à réconciliation. - Docs :
docs/reverse/PPP_DRAWMODEL_RESOURCE_CHAIN_20260731.md,PHYRE_RTTI_STATIC_REGISTRY_20260731.md,PPP_SCALE_BONEANIM_SEMANTICS_20260731.md,PS3_SDK_INSTALL_MAP_20260731.md; preuves danswork/layer_c/t1b/evidence/. ### MINOR
v2.193.0.0