Files
EscapistsReintroduced/docs/evidence/crash-start-2026-10-03/reviews/review.json
T
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

49 lines
4.2 KiB
JSON

{
"approved": true,
"concrete_blockers": [],
"read_only": true,
"compiler_or_native_runs": false,
"patch_sha256": "7b0af4235f773ae035ea9b27eec2e9f2d3afbd6ddb8ac51554fa6331c9cbeefc",
"manifest_sha256": "9295723e6653bea750b438f22366e3a9f3bc62e1645766ba42047bc1337cb5ee",
"file_hashes": {
"addons/core/Scripts/Game/ERR/00_Core/ERR_Settings.c": "47fb9c34d31bffc892b18d6d6c4e7500d10b0a681bfa73e6476a761ed3375f0d",
"addons/core/Scripts/Game/ERR/00_Core/ERR_AdminService.c": "e8f778bfe56a91a1c761968261dcd7a5f5daa7f4983752d818a5443385fac049",
"addons/core/Scripts/Game/ERR/00_Core/ERR_AdminMenu.c": "8e8233a1c9000901e3a48141d59a55584099fc3b319f87c1589461b975ac9221",
"addons/core/UI/layouts/ERR/AdminMenu.layout": "5583b018cabbebd7b4398b36bdca26c75c3437bcefed482dae9ed2a619bb7cf4",
"tools/import_settings.py": "a35ec5adf2c177f4daf2e3be5f97131b83a9920e765ee3e2c845b0d54c00af37",
"tests/test_admin_menu.py": "789f88da25bbd57bb7923065fc718f70c8a18c50681dd90079931a18993b9729",
"tests/test_settings_migration.py": "eee1f5c598f5875816d89a4bc46a9e6cc0f770557abde3d264c09dc2ded27523",
"addons/core/Scripts/Game/ERR/00_Core/ERR_ObjectiveText.c": "2e2a880e68c9384698f9df21334d27e1aceaf3b59166d00eaabb802f19f61a13",
"tests/test_rough_intel_feedback.py": "a7c5a956d65a1a4d4f4aca6ddb47ba07fe70d07e2f0f99030058ba67e9246422",
"tests/test_radio_waiting_text.py": "2acd7ebf18766c8436b998b57f06fcf07ec9e42a28b686e0bd95ede570a9a5d9",
"tests/test_start_settings.py": "8b4dcc9e786c5fc00a1e88f1c364fd8e9a1bf8f6fa73f1d5aebbaeb5da444cd7"
},
"findings": [
"Saved choice is Settings.Get(startMode); current round is separate replicated GameMode.StartMode. Show/settings/menu snapshot retain this distinction; setter persists next round only and never mutates frozen mode/anchor/participants.",
"Aliases prison/crash and0/1 use existing server-authorized dispatcher. Displayed capitalized names remain usable because Execute lowercases the full command before Selection. No random mode offered or accepted. Failed settings Save preserves in-memory selection.",
"Existing profile keys may omit startMode and receive default0. import_settings has matching default/bounds. No direct or transitive external dependency changes.",
"Crash salvage guidance only prepends ordinary unknown-radio text; identified/rough-radio guidance retains precedence. Extraction wording accurately refers to starting area. Existing prisoner wording remains consistent with retained canonical participant prefab/role.",
"Layout reuses former settings-help area, starts ordinary radio row at80 as before, and exposes Apply without Random; native rendering remains unqualified."
],
"core_adapter_assessment": {
"already_updated_in_settings_proposal": [
"tests/test_admin_menu.py new settings field/layout/Command mapping",
"tests/test_settings_migration.py additional default key",
"tests/test_rough_intel_feedback.py and test_radio_waiting_text.py add StartMode double for actual PhaseDescription"
],
"no_extra_required_identified": [
"test_mission_rules.py extracts new optional third CanTransition parameter, so its ordinary two-argument transition matrix remains valid",
"test_native_end_lifecycle.py extracts StartScenario guard only up to faction preparation; new FreezeStartMode occurs later and does not alter extracted prefix",
"test_native_memory_deadlines.py extracts historical selector conditions; added crash-start exclusion introduces no new helper dependency in that extracted expression; existing patrol helper retained",
"test_generated_sites.py/test_field_sites.py extract unchanged scheduler/separation logic; TerrainSites shared Site call remains same public signature",
"test_prison_escape_policy.py extracts unchanged pure crossing rules, not new GameMode-dependent service guards",
"test_admin_setting_policy.py fixed option matrix does not enumerate start; new explicit start setting test supplies corresponding coverage"
],
"new_registration_required": [
"tests/test_crash_start.py",
"tests/test_start_settings.py"
],
"limit": "Read-only adapter assessment; full integrated suite still required. Does not qualify native resources, replicated UI timing or full crash gameplay."
}
}