Five hooks recaptured; no source change needed. ProcessResearch's over-budget event now diverges as one line instead of a 609 KB save diff (15 calls, 3 diverged, RNG 15/15). ComputeBudget holds at 0 over 4284 compares but only 20 distinct states and 13 always-zero slots. MoveFleet diverges on 8 of 45 calls by 1 ULP of position - B4's clean verdict was a one-sample verdict. First guarded captures for OnTechResearched (RollResearchEvent draw finally fired and matched), the colony turn and MoveFleet. Guards mapped SetResearched live and found an undeclared observed-tech vector append.
16 lines
712 B
Text
16 lines
712 B
Text
# Recapture lane R: first guarded COMPARE captures for OnTechResearched, the colony turn and
|
|
# MoveFleet. ProcessResearch stays off so OnTechResearched is not nested inside another compare.
|
|
hooks=trace
|
|
hook.Shim::SelfTest::Fill=off
|
|
hook.Mars::GlobalConsts::LoadFile=off
|
|
hook.Game::WeaponDictionary::Init=off
|
|
hook.Game::SectionDictionary::SectionDictionary=off
|
|
hook.Game::TechTree::ProcessResearch=off
|
|
hook.Game::ServerPlayer::ComputeBudget=off
|
|
hook.Game::StrategyServer::ProcessFleetMovement=off
|
|
hook.Game::ServerPlayer::OnTechResearched=compare
|
|
hook.Game::ServerSystem::ProcessTurn=compare
|
|
hook.Game::StrategyServer::MoveFleet=compare
|
|
trace.path=C:\SOTS\shim.trace.jsonl
|
|
trace.inline_max=256
|
|
trace.flush=always
|