Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
26 lines
2.9 KiB
JSON
26 lines
2.9 KiB
JSON
{
|
|
"scope": "Narrow exact WCS Armament_Empty structural fallback only; no real-weapon custody relaxation.",
|
|
"native_gate": {
|
|
"path": "/tmp/erri-workbench-bmp-binding-20261004-0104/logs/logs_2026-10-04_01-04-02/console.log",
|
|
"sha256": "f73a4c64304a1958417a56c7a5920981d744de6055f7e18edd733befa00201de",
|
|
"facts": "Reason64 identifies exact WCS Armament_Empty: item absent,parent null,binding attached exact,binding container exact mount,mount owner allowed exact BMP turret. Snapshot remains valid incomplete4weapons/3muzzles/3magazines.",
|
|
"limitations": "Reason4096 does not separately identify the zero-muzzle entity. Immediate-parent topology and uniqueness were not logged. New helper proves these and zero muzzle list at each actual sample; previous native is failed evidence, not fix qualification."
|
|
},
|
|
"behavior": [
|
|
"AddWeapon only accepts the existing reason64 case when exact physical WCS control has absent/null reverse inventory binding and complete bounded native structural proof. Conflicting nonnull inventory binding cannot enter fallback.",
|
|
"Same proof handles direct discovery in NonFiringPlaceholder, retaining exact component dedup and normal32weapon collection cap before omission.",
|
|
"Immediate parent and control must both be in allowed hierarchy; at most8 parent weapon slots; exact physical component owner, unique matching mount, mount owner==parent, binding container==mount, attached entity==control, expected original mount when normalizing; actual empty muzzle list.",
|
|
"Unknown GUID/path, unproven periscope null parent, real gun/muzzle variants, foreign topology, ambiguous slots and all existing cargo/crew/count bounds remain fail-closed."
|
|
],
|
|
"tests": {
|
|
"program": "tests/test_hq_mounted_ammo_sampler.py",
|
|
"green": "Actual ordinary+WORKBENCH whole sampler, all retained controls plus new missing/null reverse+manager/direct duplicate ordering, control-only,15 malformed topology/resource cases and32/33controls cap.",
|
|
"baseline": "Compiled actual original sampler then runtime assertion failure on first expected complete native-shaped empty-control sample.",
|
|
"mutation": "Removed binding attached-identity check only; compiled then runtime negative assertion failure.",
|
|
"doubles_limit": "Hierarchy/native component and slot APIs are explicit policy doubles; not engine or MP proof.",
|
|
"green_final_comment_delta": "After green only the helper comment changed to observed WCS BMP empty control; executable code and tests unchanged."
|
|
},
|
|
"command": "PYTHONPATH=/home/jakub/devel/escapistsrereintroduced/tests ERR_MOUNTED_AMMO_SOURCE=/tmp/erri-bmp-structural-fallback/addons/core/Scripts/Game/ERR/10_AI/ERR_HQMountedAmmoSampler.c python3 /tmp/erri-bmp-structural-fallback/tests/test_hq_mounted_ammo_sampler.py",
|
|
"qualification": "No live edits, native run, third-party asset bytes or compiled engine claim. Additional small bounded reads for exact control only; performance not measured."
|
|
}
|