Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
69 lines
4.6 KiB
JSON
69 lines
4.6 KiB
JSON
{
|
|
"decision": "Approved source proposal; no remaining concrete blocker found after two review corrections.",
|
|
"producer": "/tmp/erri-launcher-resupply-1140",
|
|
"source_sha256": {
|
|
"addons/core/Scripts/Game/ERR/10_AI/ERR_HQ.c": "52e601a0571b4942c9d4d0ce820727df8498febd6726efbd7da0c5eff7041b58",
|
|
"addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryResupply.c": "db2c0f1bfb0e0a8accabe45abd7eb93e6a13d6a8205ea427b12e28a7b4b28f40",
|
|
"addons/core/Scripts/Game/ERR/10_AI/ERR_InfantryAmmoTransfer.c": "e6f0896dd7bdfea89877cc7150928c94f36ac8aeb3af9a383bc665d5df801267"
|
|
},
|
|
"independent_tests": {
|
|
"test_infantry_ammo_transfer.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "382b7a567d4a99fa6521160aac5d7eb332eeae20e14bf64eb603d59fdd0bb1a8",
|
|
"log": "/tmp/erri-launcher-review-1130/test_infantry_ammo_transfer.py.log"
|
|
},
|
|
"test_infantry_resupply_planning.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "7bcb3461cc16b04a0247e928c1c831a3fb0944f48edcb9125cf7ef463a07168a",
|
|
"log": "/tmp/erri-launcher-review-1130/test_infantry_resupply_planning.py.log"
|
|
},
|
|
"test_infantry_resupply_coordinator.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "f9cf7d583a25a12cec9f5f80539b2590449560331f4ef34e33ea2db283c5d54a",
|
|
"log": "/tmp/erri-launcher-review-1130/test_infantry_resupply_coordinator.py.log"
|
|
},
|
|
"test_mounted_supply_integration.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "f52acf7a16c9d5273894eb5a4afe7657a7c97de2ed72ba06671d25e163eea5d7",
|
|
"log": "/tmp/erri-launcher-review-1130/test_mounted_supply_integration.py.log"
|
|
},
|
|
"test_hq_multiconvoy_supply.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "e58d1d6eba48b2c5c6073d54c76302b2a7250ad22176fa94c386e1bc2ce65588",
|
|
"log": "/tmp/erri-launcher-review-1130/test_hq_multiconvoy_supply.py.log"
|
|
},
|
|
"test_infantry_mine_coordinator.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "2fdb2138685a329cef11557973450bd5189d3d7d657dac5cc51b3df2530fab6b",
|
|
"log": "/tmp/erri-launcher-review-1130/test_infantry_mine_coordinator.py.log"
|
|
},
|
|
"test_infantry_supply_pool.py": {
|
|
"exit_code": 0,
|
|
"test_sha256": "6fc0053337bbb889021c6eba608796ef946ff4d30a1b01cf678927293218d9d2",
|
|
"log": "/tmp/erri-launcher-review-1130/test_infantry_supply_pool.py.log"
|
|
}
|
|
},
|
|
"resolved_findings": [
|
|
"LauncherStock now rejects rifle-only, spent, absent and incompatible original stock before claims, message consumption or cooldown. It checks only attributable own roster/weapon custody, capped at128 compatibility pairs.",
|
|
"Loaded launcher magazine binding now requires exact current muzzle parent-container and attached entity identity, accepting a native loaded slot with no ordinary deposit storage. Incoming cargo storage validation remains unchanged."
|
|
],
|
|
"reviewed_constraints": [
|
|
"Fresh delivered LauncherComplete with full reported member count, a supported magazine and zero rounds/chambers; no inference from unknown, missing-magazine or projectile-only launchers.",
|
|
"HQ ordering remains rifle, mounted, launcher, mine; same stock/spent and report replay/cooldown state are reused. Launcher mode flows through trip, Compatible, transfer constructor and Context.",
|
|
"Original stock reserved before native submission via shared spent array; any submission remains spent. Incoming IsUsed is refused. Exact physical proof and callback are both required.",
|
|
"Uncertain submitted launcher operations retain donor/recipient claims in state7 through Stop; no native retry or stock refund. Terminal proof/deletion releases only owned claims."
|
|
],
|
|
"mutation": {
|
|
"path": "/tmp/erri-launcher-review-1130/native-slot-mutation-red.log",
|
|
"result": "Compiled then failed actual Compatible assertion when exact muzzle-slot proof was replaced by old StoredUnder loaded-magazine check.",
|
|
"setup_failure_preserved": "/tmp/erri-launcher-review-1130/native-slot-mutation-compile-only.log",
|
|
"setup_note": "First mutation left an unused local and failed compilation; declaration removed before the behavioral red run. Only final runtime assertion is counted as mutation evidence."
|
|
},
|
|
"limits": [
|
|
"No native compile or inventory transfer was run by reviewer. Carried launcher catalogue coverage, animation/reload and actual engine movement remain unqualified.",
|
|
"This slice delivers a compatible finite magazine to carried inventory; it does not guarantee an automatic reload or support projectile-only/disposable configurations.",
|
|
"All seven focused tests execute modeled actual methods; they do not establish network/native callback behavior."
|
|
],
|
|
"writes": "Only review notes/logs and isolated mutation under /tmp; no producer, target or reference source changes."
|
|
}
|