Aggiornamento 2.18
06/06/2026
v2.18.0BETA
Seymour
MODEL VIEWER (HD) nell'editor: una gallery 3D degli 816 modelli texturizzati+animati
- Il plot twist ("questo dovrà girare dentro l'editor") è diventato una feature: un nuovo bottone "Model Viewer (HD) 🐉" nella card Extras → apre
RuntimeTools/FFXModelViewerWeb(three.js + GLTFLoader) servito su HTTP loopback (la stessa ricetta PROVATA di Magic Viewer/Aurora — (letterale tecnico: PROVEN)python -m http.server, distinct port 8767; HTTP mandatory for the catalogfetch()+ GLTFLoader of/work/...). The viewer is an animated gallery: a unified catalog of 816 models (modelviewer-catalog.json, generated from the HD-lane baseline — pc/sum/npc/mon/obj/wep), filter by category + verdict + search, thumbnails, and animation-clip playback (AnimationMixer + clip selector) + orbit/grid/wire/spin/fit. It consumes exactly the glTFs baked in the HD saga (META 1 + pure-HD) — no re-baking.ModelViewerLauncher.cs(clone ofMagicViewerLauncher) + a button inMain_Window.axaml/handler. Build 0 errors; serve proven (catalog/index/gltf = 200). csproj bump (real UI feature). Phase 2 queued (owner decision): host the SAME viewer in an editor WebView panel (no browser) — needs one nuget; the three.js engine is host-agnostic. Docs:FFX_MODELVIEWER_EDITOR_2026-06-06.md
v2.17.0
v2.18.1BETA
Seymour
self-audit: 6 bug MIEI (di Jarvis) fixati (trovati in una review adversarial a 2 chat, ogni finding verificato da un 2° agente): (letterale tecnico: MY OWN)
- Ps3MagicBrowser: la prima texture di ogni cartella veniva decodificata SINCRONAMENTE sul thread UI (il freeze che sostenevo di aver rimosso) (letterale tecnico: SYNCHRONOUSLY)e decodificata di nuovo in background — ora la row[0] è lasciata al passaggio in background,
DecodeRowssalta le row già decodificate (nessun doppio decode), e (letterale tecnico: already-decoded) (letterale tecnico: double-decode)decodeGenerationora èvolatile(visibilità worker↔UI). - Monster AI Editor: modificare l'hex (
AiEditRow) o opcode/operando nell'AI Assembler (AiAsmRow) non aggiornava il significato on-screen —AiEditRowora sollevaOnPropertyChanged(Meaning)nei setter hex E comando; (letterale tecnico: AND)AiAsmRowè diventatoObservableObjecte notifica Meaning/Label/HasOperand. - OpcodeHelp: tooltip opcode sbagliati (
StartsWith("PUSHFF")non matchava mai;PUSHFfloat-const finiva nell'help del register-bank) — riscritto per dispatch suOperandKindOf(il kind PROVATO), non su fragili prefissi mnemonici. (letterale tecnico: PROVEN) - MagicViewerLauncher: the ROOT of your "Waiting for catalog" — it opened the browser and returned "success" even when python never came up; now
EnsureViewerServerreturns a bool, the poll is ~6s (cold start), honest status on failure, cache-bust on the URL (stale stub), and it kills the python on ProcessExit (no leaked process). (Fixes in MY files only. The other chat's findings went todocs/ai/HANDOFF_CODE_AUDIT_HD_MODELS_2026-06-06.mdfor THEM to verify+fix — I did not touch their lane.) csproj bump.