Files
jakub 6a667d8deb Capture current mission, AI, map and administration development
Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
2026-10-13 22:52:53 +02:00

24 lines
1.7 KiB
JSON

{
"status": "Frozen isolated proposal, target unchanged",
"files": {
"addons/core/Scripts/Game/ERR/00_Core/ERR_PlayerGuide.c": "e49bab76a015ab545088af7e5eaa3cc45811907db4e5b1c5fa8c18afef34b62f",
"tests/test_hint_delivery.py": "ed6d856b55d9039064ed5532d423fe9e8f5f2fd077f85f1e25a921c8d9bbf344"
},
"patch_sha256": "9f87ba44ca1d09da95ce7c2e04955ac2faa16aeca0c1cc42190e8344a8306e0e",
"results": {
"red": {
"exit_code": 1,
"log_sha256": "43d1e785fc3bf2d776a61a18c0970ea59ce0ab11e8c65380506494b5c0f2b40f"
},
"green": {
"exit_code": 0,
"log_sha256": "670a12abaa16aae6ff07d3fc7fb3492063a50cf8d78760da610705275e8f7efa"
}
},
"apply_check": true,
"defect": "ERR_StartGuide restricts initial scheduler to local controller but recurring UpdateGuide lacks ownership recheck. Retained former controller can display duplicate or stale-body-eligible hints into new local session; PREPARING bypasses body eligibility entirely.",
"fix": "UpdateGuide refuses absent game; on local-controller mismatch removes only this bound callback and resets its started latch. Current controller timer stays registered. Reacquisition can call existing StartGuide to register exactly once.",
"test_scope": "Actual production StartGuide/OnControlledEntityChanged/UpdateGuide and existing Observer update bodies; explicit two-controller queue double verifies owner-specific cancellation, PREPARING and RADIO_SEARCH refusal, reactivation, unavailable game and unchanged retry/dedup/spectator behavior. Baseline compiled then failed runtime assertion; corrected proposal passes. No native controller-lifecycle or UI claim.",
"observer_scope": "Adjacent observer callback ownership concern not changed or claimed fixed."
}