Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
16 lines
1.9 KiB
JSON
16 lines
1.9 KiB
JSON
{
|
|
"finding": "A deleted exact shell leaves ERR_MortarSupplyTransfer.Unresolved true indefinitely when accepted native move never supplies a failure callback. Deadline invalidates authority but never resolves uncertainty. Battery.SupplyPending remains true, so MortarSystem skips new orders even with other physical shells.",
|
|
"source_boundary": [
|
|
"ERR_MortarSupplyTransfer.Poll/Unresolved",
|
|
"ERR_MortarBattery.SupplyPending and SupplyState",
|
|
"ERR_MortarSystem.Assign: battery.SupplyPending gate"
|
|
],
|
|
"fix": "Mirror existing ERR_MortarCourierTransfer.Poll null-shell rule after server guard: mark exact deletion resolved and invalidated, clear ready, return FAILED. No damage/capture/unknown-storage inference, no refund/retry/spawn/new transfer.",
|
|
"red": "Updated actual Poll+Unresolved+Battery.SupplyPending program compiles then assertion-fails on exact weak identity deletion; red.log.",
|
|
"green": "All existing test_mortar_transactions.py programs pass plus zero/success/failure callbacks, already-cancelled branch, late acknowledgement, timeout, and nonnull detached ambiguity. green.log.",
|
|
"limits": "Entity deletion modeled by native weak-reference invalidation; no engine run. Other mortar cancellation guard pattern was not reproduced because success is authorized by later Poll. Existing test had asserted null remains pending; changed explicitly to permanent loss, matching existing courier behavior.",
|
|
"preservation": "One source and one existing test proposal; baseline working/index hashes retained. Original and successor untouched.",
|
|
"apply_check_exit": 0,
|
|
"test_command": "PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=/home/jakub/devel/escapistsrereintroduced/tests ERR_MORTAR_SUPPLY_TRANSFER_SOURCE=/tmp/erri-mortar-review-1804/addons/core/Scripts/Game/ERR/10_AI/ERR_MortarSupplyTransfer.c python3 /tmp/erri-mortar-review-1804/tests/test_mortar_transactions.py"
|
|
}
|