mirror of
https://github.com/Cesarus85/ringfall-mjolnir-vr.git
synced 2026-10-29 04:01:10 +01:00
No new strict bytes and no regressions. All three changes are source-authenticity corrections retained at zero exact credit. actor_firing_position/_pre_evaluator_attack recovers the MISSING RELOCATION (38 -> 39, matching January), differing relocation rows 24 -> 9, objdiff 93.62 -> 96.11. Four byte-decided levers: 20.0f * (d / 2.0f) stops VC7 folding 0.5f*20.0f into 10.0f; two initializers become statements because the zero store sits on the opposite side of call _actor_get_weapon_definition and a stack store cannot be sunk across a call; an explicit strict < replaces MIN(), which expands to ((a)>(b)?(b):(a)) and can only emit test ah,0x41 where January emits test ah,5. ai/_ai_test_ballistic_line_of_fire rebuilds the recorded w3c b5 shape: instruction counts become 296/296 (were 292/296), real differing regions 28 -> 11, objdiff 94.5 -> 98.996. It reproduces January's fsubr / fst-to-dead-parameter-home / post-call fld structure for segment_time exactly. ai/_ai_test_line_of_fire lands only the store-order half of the old lof2 candidate; the rejected bare call-site parentheses are NOT landed and that prior ruling stands. objdiff 88.17 -> 89.20. actors.c drops three "= NULL" initializers that were forcing a 12-byte .bss January does not have. January defines all three in linker_common.obj and references them as undefined, i.e. the original used tentative definitions. These were the only "struct data_array *x = NULL;" definitions in the whole tree; the sibling encounters.c already uses the tentative form. .bss is now absent and the three symbols are COMMON, matching January. config/parked.json: three entries re-baselined (measurements refreshed, evidence extended with the lever and a reopening condition), none retired, none unrelated touched. Parks remain 184 active / 0 stale / 0 invalid. Verification: full ninja build unchanged at 1,444,193/1,770,166 (7,292/7,574); stable_verdicts diff vs the frozen baseline gained 1 / 224 bytes / 0 regressions; accepted ledger +214 meaningful / 0 regressions; admission audit 19/0/8/0; fake scan 0 new findings (source/ai stays at the 2 inherited pragma leads); point guard passes on all three units; git diff --check clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>