Actualización 2.125
16/6/2026
updateauroraJARVIS-AURORA
Finalización balística de Aurora Fase 1: sonda `aurora-calib-v2` (CSV/JSON con identidad residual/flipZ/yaw180 + height_0x534). Carril Jarvis-AURORA. MENOR (nueva capacidad: nuevo modo `ffxprobectl` que emite un artefacto CSV+JSON con un nuevo esquema de calibración residual; primera vez que emparejamos `chunk3.monLive` × `actor+0x3B0` × `actor+0x534` en una sonda estructurada). Implementa la Fase 1 del plan Aurora (`.cursor/plans/aurora_balistica.plan.md`). Especificación seguida: `docs/reverse/FFX_AURORA_CALIBRATION_PROBE_SPEC_2026-06-15.md` (identidad XZ probada el 2026-06-05 por IDA; Y residual aún RT2-pendiente). El modo: `ffxprobectl aurora-calib-v2 [--route <field> <group> <formation>] [--battle <id>] [--out <json>] [--csv <csv>] [--max-slots <N>]` (solo lectura, sin instrumentación MMF más allá de la ventana de lectura `Arm(1, ...)` existente). Para cada ranura `monLive` hasta `min(monCount, max-slots=16)`: lee `chunk3.monLive[s]` desde `g_FFX_Battle_AreaChunk + ptr@+0x20 + 16s` (XYZW), resuelve `actor[s] = 0x11334CC + 0xF90s`, lee `actor+0x3B0` (mundo XYZW), `actor+0x3C0` (caché XYZW opcional), `actor+0x534` (altura flotante). Calcula 3 residuales: `identity = actor - chunk`, `flipz = actor - (cx,cy,-cz)`, `yaw180 = actor - (-cx,cy,-cz)` con componentes `dx/dy/dz` + RMS (completo + solo XZ). Aceptación (coincidente con A01): `identity_rms_xz < 0.5` Y `identity_rms 5 < flipz_rms` Y `identity_rms 5 < yaw180_rms` -> `winner=identity`; las alternativas solo ganan si su rms<1.0 (improbable post-IDA - emite una alerta "INEXPECTADO - investigar"); slot bloqueado si actor_array no es válido/mundo no finito (desaparece/animación) - caso `blocked-runtime-state`, NO `fail`. Salida: JSON (`work/actor_overlay/aurora_calib_<battle_id>_<utcstamp>.json` predeterminado) con `verdict` consolidado (`identity-confirmed-live` / `ALERT-non-identity-winner` / `blocked-runtime-state` / `partial`) + una matriz `rows`; CSV paralelo con 36 columnas (qpc, battle_id, campo de ruta/grupo/formación, area_chunk_va, actor_array_va, slot, dict_id, chunk_xyzw, actor_xyzw, actor_cache_xyz, height_0x534, identidad/flipz/yaw180_dx/dy/dz/rms, identity_rms_xz, ganador, motivo). Compilación: `dotnet build RuntimeTools/FfxDinput8Probe/ctl/Ctl.csproj -c Release` PASS (0 errores, solo advertencias preexistentes CS8632/CS0219). No toca: sonda DLL (`ffx-probe.dll`), puertas fuera de línea, FfxHooksDll. Próxima fase: RT2 calib-v2 con Halyson en 4 batallas doradas (`azit03_00`, `bsil05`, `klyt00_00` + un control como `425/0/0`) — receta en `docs/reverse/FFX_AURORA_FORCE_BATTLE_CALIBRATION_PROTOCOL_2026-06-15.md`. Fase 1 RT2 = N/A (solo construcción de sonda); Fase 2 RT2 = bloqueado en humanos (Halyson).
Leer notas