Capture current mission, AI, map and administration development

Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
This commit is contained in:
2026-10-13 22:52:53 +02:00
parent a951a96edc
commit 6a667d8deb
8104 changed files with 2124945 additions and 2061 deletions
@@ -0,0 +1,29 @@
--- a/tests/test_hq_convoy_dispatch.py
+++ b/tests/test_hq_convoy_dispatch.py
@@ -9,7 +9,7 @@
def cpp(s):
for old,new in [('protected ',''),('override ',''),('null','nullptr'),('Replication.','Replication::'),
('ERR_GameMode.','ERR_GameMode::'),('ERR_ConvoyRoadPlan.','ERR_ConvoyRoadPlan::'),
- ('ERR_Settings.','ERR_Settings::'),('ERR_TimeService.','ERR_TimeService::'),('ERR_EnvironmentService.','ERR_EnvironmentService::'),('Math.','Math::'),('array<string>','Array<string>&')]:s=s.replace(old,new)
+ ('ERR_AdminMenuFields.','ERR_AdminMenuFields::'),('ERR_Settings.','ERR_Settings::'),('ERR_TimeService.','ERR_TimeService::'),('ERR_EnvironmentService.','ERR_EnvironmentService::'),('Math.','Math::'),('array<string>','Array<string>&')]:s=s.replace(old,new)
for typ in ('ERR_GameMode','ERR_ConvoyReceipt','ERR_ConvoyTask','ERR_SiteRuntime','ERR_HQUnit','ERR_AdminProvider'):
s=re.sub(r'\b'+typ+r' (?=\w)',typ+'* ',s)
for var in ('m_SupplyConvoys','m_ConvoyStartup','m_Mode','m_Convoys','m_ConvoyPool','m_ConvoyTask','m_HQ','site','unit','receipt','mode','provider'):
@@ -87,6 +87,8 @@
if(key=="automaticConvoyEnabled"){automatic=value;return true;}
assert(key=="antiAirChancePercent");stinger=value;return true;}
};
+// Settings listing is outside these convoy assertions (Keys is empty); its actual formatter is covered by test_start_settings.
+struct ERR_AdminMenuFields{static string StartSummary(int,int){return "start summary";}};
// Date/time branches are unrelated to these commands and deliberately refuse.
struct ERR_TimeService{static bool ParseClock(string,int&){return false;}};
struct ERR_EnvironmentService{static bool ParseDate(string,int&){return false;}static bool ParseProfile(string,int&){return false;}};
@@ -98,7 +100,7 @@
struct Sites sites;ERR_Settings settings;bool sitesReady=true;
static ERR_GameMode* Get(){return current;}bool Active(){return active;}Ledger* Forces(){return &ledger;}
struct Sites* Sites(){return sitesReady?&sites:nullptr;}ERR_Settings* Settings(){return settingsReady?&settings:nullptr;}
- string Status(){return "mission";}bool AbandonRound(){return false;}
+ int StartMode(){return 0;}string Status(){return "mission";}bool AbandonRound(){return false;}
};
struct Clock{float GetWorldTime(){return 123000;}Clock* GetWorld(){return this;}}clock_;
Clock* GetGame(){return &clock_;}
@@ -0,0 +1 @@
PASS: actual authenticated convoy dispatch, active/ready admission gates, canonical receipt, safe unconsumed preflight retry, pool refusal, retained partial failure and consumed no-retry
@@ -0,0 +1,24 @@
{
"complete": true,
"scope": "Read-only route proposal/API review, plus separate tests-only adapter followup. No compiler or native run after parent serialization notice.",
"source_hashes": {
"addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeCrashStartProbe.c": "d039027a462cc57d35d5e4f722e5b6b03e8f95a38fe66b19982092df983b1db0",
"addons/core/Scripts/Game/ERR/40_Chat/ERR_NativeSmoke.c": "ce55c8be0047406e17ec4dced1912332ab4347bfa1f204921302392099a9e67b",
"addons/core/Scripts/Game/ERR/00_Core/ERR_NativeContractsProbe.c": "60aa767d9455f2f4958a6a47bd68bbd8ab0466adc8f1dd9ae433c40ae96c68ff",
"addons/core/Scripts/Game/ERR/30_Map/ERR_ScenarioMap.c": "75fa1d742129ef7f33c005cd48f56db7f49ee7bde3c5428532b0b501b032b0a3"
},
"findings": [
{
"status": "corrected",
"detail": "Authored vanilla map is replaced by current ScenarioMap FieldMap; followup expectation matches exact active owned resource. Direct reciprocal bag slot filter counts loose authored stock and excludes nested gun magazines."
}
],
"branch_review": "Default prison route retained. Crash starts in RADIO_SEARCH, validates canonical conscious on-foot original actor, owned static replicated wreck and bounded measured geometry, then uses ordinary stock/radio/extraction route. Contracts expected objective matches frozen mode.",
"api_review": "CompartmentAccessComponent.IsInCompartment is installed generated native API. GetBounds and Physics.IsDynamic match successfully executed geometry witness. Native stock slot methods match established reciprocal custody patterns.",
"limits": [
"No claim of full crash native success; parent run is pending.",
"Shared map fixture expectation is pinned to current ScenarioMap override; future overrides require adapting diagnostic.",
"No multiplayer, flight, pathing or collision guarantee is inferred."
],
"adapter_manifest_sha256": "ab2364c9e3139125b1d8bb0fdfde8d2c51908d0bbdb433dcecfd0b033bfc45d0"
}
@@ -0,0 +1,14 @@
{
"files": {
"tests/test_hq_convoy_dispatch.py": {
"baseline_sha256": "945a3cba06694608b4880408a13447ebbbf812d400fba3af5b7a57cb006a1f6d",
"proposed_sha256": "eab5cbc72fa6efcf4702acc4f2d2165c99b37da97c648d3c3b489234f375ecd4"
}
},
"patch_sha256": "cad9cacc06b7ce730cd581ed2a8eddfb7ed83dc682daece37686f7fda200d310",
"green_log_sha256": "9ef0c0bc476587c61a60336fb57dd110e9fc14babe9c3b608b6fdc87b3c10c43",
"focused_exit_code": 0,
"scope": "Tests only. Namespace translation, current-mode getter double and unrelated settings formatter double. Existing assertions and extracted production bodies unchanged.",
"scan": "Other Execute-body users test_start_settings, test_spectator_guidance, test_intel_admin, test_convoy_auto_settings, test_admin_providers, test_view_distance, test_ai_stinger_admin do not compile affected listing prefix.",
"baseline_failure": "Parent preliminary full suite at /tmp/erri-crash-root-1852/full-suite.log retained; failure was missing C++ doubles for newly introduced API, not a production regression."
}