PASS: actual objective overlay lifecycle preserves separate ownership, late readiness/reopen, data refresh, pan/zoom/culling, supported sibling/shared-frame parents, coordinate offsets, native task-clear isolation and terminal cleanup; native rendering remains unverified PASS: actual map element initializes each widget, retries missing widgets, updates position and changes only stale text/icon data; no native image-load claim PASS: actual native fixture root/config ownership and idempotent cleanup preserve foreign map, selector excludes ordinary route, fixed budgets/screenshots/UGC boundaries retained; native operations not executed PASS: actual full Inspect rejects canvas parenting, wrong active container/canvas, omitted origin offset, wrong rendered box and stale coordinates; differing origins and DPI accepted PASS: actual long-warning phases retain visible label through1500ms checkpoint then restore radio before close; synthetic marker separated from unmoved player PASS: actual Center places marker100screenpx left of pan center at both fixture zooms without altering disclosed coordinates PASS: missing, child-only, malformed, zero and duplicate prefab root IDs rejected PASS: delayed scene/inventory arrival, deferred preload, identity checks, stale replies, timeout and observer cleanup PASS: actual inventory manifest, delayed/missing/wrong-owner item links, finite cap, consumed-stock refresh and preload ordering PASS: spawn scene remains held through final acknowledgement and nearby use; leaving, reassignment, disconnect and teardown release it PASS: production prison AI hold/release, repeat activation, authority/faction/player exclusion, dead actor and stop cleanup PASS: actual protected/capped damage plus exact-actor terminal fixture bypass through delayed native damage, fail-closed ownership and untouched ordinary actor; no native claim PASS: actual full planner selection/commit body, 360 equivalence scenarios, orders/reservations/cooldowns identical; one128-unit scan vs >10000 repeated unit visits; no FPS claim PASS: actual observer monitor/recovery/cleanup rejects retained old controller, preserves new camera/editor/hints/timer, restarts once and retains normal recovery; native effects modeled from SDK, no runtime claim PASS: former chat controller releases only its own callbacks and preserves replacement menu; current-owner stop/scope and repeated teardown remain intact PASS: wrong observer fixture selector rejected before runtime/profile setup; no engine launched PASS: actual depot radio/planning/two-leg state transitions, fixed deadline, late proof quarantine, finite import and no adoption after Stop PASS: actual depot HQ lifecycle, existing planner priority, server/mode/owner gates, idempotent polling and owner replacement PASS: actual full depot leaf, exact custody, isolated callbacks, finite reservation, false/unknown and Stop quarantine, once-only delivery and caps; native movement unqualified PASS: actual authored identity capture, READY-only detached provenance, same shared stock admission, completed exact two-leg proof, lifetime caps and Stop no late adoption actual mounted HQ dispatch planning, radio, ownership and lifecycle checks passed /tmp/err-policy-tki2ggiz/check.cpp:136:8: error: redefinition of ‘struct ERR_HQRoadIntercept’ 136 | struct ERR_HQRoadIntercept | ^~~~~~~~~~~~~~~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:106:8: note: previous definition of ‘struct ERR_HQRoadIntercept’ 106 | struct ERR_HQRoadIntercept | ^~~~~~~~~~~~~~~~~~~ /tmp/err-policy-tki2ggiz/check.cpp: In function ‘int main()’: /tmp/err-policy-tki2ggiz/check.cpp:243:14: error: ‘ERR_HQMountedInterceptRules’ does not name a type 243 | using Rules=ERR_HQMountedInterceptRules;ERR_HQBelief belief;SCR_AIGroup group; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/16/cassert:46, from /tmp/err-policy-tki2ggiz/check.cpp:2: /tmp/err-policy-tki2ggiz/check.cpp:244:9: error: ‘Rules’ has not been declared 244 | assert(Rules::Eligible(&belief,10000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:244:9: error: ‘Rules’ was not declared in this scope 244 | assert(Rules::Eligible(&belief,10000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:245:2: error: ‘ERR_ConvoyInterceptOrder’ was not declared in this scope 245 | ERR_ConvoyInterceptOrder order;order.Token=400001;order.Group=&group;order.SourceId="original-convoy";order.VehicleIndex=0;order.Position={1000,10,1300};order.IssuedAt=8000;order.ExpiresAt=125000;order.ObservedAt=5000;order.BeliefId=3;order.BeliefRevision=2;order.ReportId=1; | ^~~~~~~~~~~~~~~~~~~~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:245:33: error: ‘order’ was not declared in this scope 245 | ERR_ConvoyInterceptOrder order;order.Token=400001;order.Group=&group;order.SourceId="original-convoy";order.VehicleIndex=0;order.Position={1000,10,1300};order.IssuedAt=8000;order.ExpiresAt=125000;order.ObservedAt=5000;order.BeliefId=3;order.BeliefRevision=2;order.ReportId=1; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:38: error: ‘Rules’ is not a class, namespace, or enumeration 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:31: error: expected primary-expression before ‘void’ 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:31: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:246:31: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:246:31: error: expected ‘)’ before ‘void’ 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:123: error: ‘Rules’ is not a class, namespace, or enumeration 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:116: error: expected primary-expression before ‘void’ 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:246:116: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:246:116: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:246:116: error: expected ‘)’ before ‘void’ 246 | vector frozen=order.Position;assert(Rules::Current(&order,&belief,10000));belief.PredictedPosition={1050,10,1000};assert(Rules::Current(&order,&belief,11000)&&order.Position==frozen);belief.PredictedPosition={1000,10,1000}; | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:269:10: error: ‘Rules’ is not a class, namespace, or enumeration 269 | assert(!Rules::Current(&o,&b,now));} | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:30: error: ‘Rules’ is not a class, namespace, or enumeration 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:23: error: expected primary-expression before ‘void’ 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:23: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:270:23: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:270:23: error: expected ‘)’ before ‘void’ 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:96: error: ‘Rules’ is not a class, namespace, or enumeration 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:89: error: expected primary-expression before ‘void’ 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:270:89: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:270:89: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:270:89: error: expected ‘)’ before ‘void’ 270 | order.VehicleIndex=3;assert(Rules::Current(&order,&belief,38000));order.VehicleIndex=5;assert(Rules::Current(&order,&belief,38000)); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:271:10: error: ‘Rules’ is not a class, namespace, or enumeration 271 | assert(!Rules::Eligible(&belief,50001));assert(!Rules::Eligible(nullptr,10000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:271:50: error: ‘Rules’ is not a class, namespace, or enumeration 271 | assert(!Rules::Eligible(&belief,50001));assert(!Rules::Eligible(nullptr,10000)); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:273:9: error: ‘Rules’ is not a class, namespace, or enumeration 273 | assert(Rules::Select(&belief,10000,reserved,result)&&result==vector(1000,10,1300));assert(ERR_ConvoyPlacement::calls==1&&ERR_SettlementSafety::calls==1);assert(std::abs(ERR_ConvoyPlacement::heading-90)<.001); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:273:2: error: expected primary-expression before ‘void’ 273 | assert(Rules::Select(&belief,10000,reserved,result)&&result==vector(1000,10,1300));assert(ERR_ConvoyPlacement::calls==1&&ERR_SettlementSafety::calls==1);assert(std::abs(ERR_ConvoyPlacement::heading-90)<.001); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:273:2: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:273:2: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:273:2: error: expected ‘)’ before ‘void’ 273 | assert(Rules::Select(&belief,10000,reserved,result)&&result==vector(1000,10,1300));assert(ERR_ConvoyPlacement::calls==1&&ERR_SettlementSafety::calls==1);assert(std::abs(ERR_ConvoyPlacement::heading-90)<.001); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:274:26: error: ‘Rules’ is not a class, namespace, or enumeration 274 | road.width=5.99;assert(!Rules::Select(&belief,10000,reserved,result)&&result==vector::Zero);road.width=6; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:275:90: error: ‘Rules’ is not a class, namespace, or enumeration 275 | int placementCalls=ERR_ConvoyPlacement::calls;ERR_SettlementSafety::clear=false;assert(!Rules::Select(&belief,10000,reserved,result)&&result==vector::Zero&&ERR_ConvoyPlacement::calls==placementCalls);ERR_SettlementSafety::clear=true; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:276:43: error: ‘Rules’ is not a class, namespace, or enumeration 276 | ERR_ConvoyPlacement::clear=false;assert(!Rules::Select(&belief,10000,reserved,result)&&result==vector::Zero);ERR_ConvoyPlacement::clear=true; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:277:95: error: ‘Rules’ is not a class, namespace, or enumeration 277 | road.points={{900,20,1300},{1100,20,1300}};placementCalls=ERR_ConvoyPlacement::calls;assert(!Rules::Select(&belief,10000,reserved,result)&&ERR_ConvoyPlacement::calls==placementCalls);road.points={{900,10,1300},{1100,10,1300}}; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:278:42: error: ‘Rules’ is not a class, namespace, or enumeration 278 | reserved.Insert({1000,10,1300});assert(!Rules::Select(&belief,10000,reserved,result));reserved.clear(); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:279:50: error: ‘Rules’ is not a class, namespace, or enumeration 279 | game.ai.manager.roads.resize(129,&road);assert(!Rules::Select(&belief,10000,reserved,result));game.ai.manager.roads={&road}; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:280:92: error: ‘Rules’ is not a class, namespace, or enumeration 280 | auto unknown=belief;unknown.HasVelocity=false;int queries=game.ai.manager.queries;assert(!Rules::Select(&unknown,10000,reserved,result)&&game.ai.manager.queries==queries); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:281:36: error: ‘Rules’ is not a class, namespace, or enumeration 281 | Replication::server=false;assert(!Rules::Select(&belief,10000,reserved,result)&&game.ai.manager.queries==queries);Replication::server=true; | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:282:29: error: ‘Rules’ is not a class, namespace, or enumeration 282 | float score,heading;assert(Rules::FromPolyline({{900,10,1300},{1100,10,1300}},belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)&&result.z==1300); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:282:22: error: expected primary-expression before ‘void’ 282 | float score,heading;assert(Rules::FromPolyline({{900,10,1300},{1100,10,1300}},belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)&&result.z==1300); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:282:22: error: expected ‘:’ before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:282:22: error: expected primary-expression before ‘void’ /tmp/err-policy-tki2ggiz/check.cpp:282:22: error: expected ‘)’ before ‘void’ 282 | float score,heading;assert(Rules::FromPolyline({{900,10,1300},{1100,10,1300}},belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)&&result.z==1300); | ^~~~~~ /tmp/err-policy-tki2ggiz/check.cpp:282:112: error: expected primary-expression before ‘{’ token 282 | float score,heading;assert(Rules::FromPolyline({{900,10,1300},{1100,10,1300}},belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)&&result.z==1300); | ^ /tmp/err-policy-tki2ggiz/check.cpp:282:126: error: expected primary-expression before ‘,’ token 282 | float score,heading;assert(Rules::FromPolyline({{900,10,1300},{1100,10,1300}},belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)&&result.z==1300); | ^ /tmp/err-policy-tki2ggiz/check.cpp:283:10: error: ‘Rules’ is not a class, namespace, or enumeration 283 | assert(!Rules::Ahead(belief.Position,belief.Velocity,{1000,10,1299}));assert(!Rules::Ahead(belief.Position,belief.Velocity,{1000,10,1901})); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:283:80: error: ‘Rules’ is not a class, namespace, or enumeration 283 | assert(!Rules::Ahead(belief.Position,belief.Velocity,{1000,10,1299}));assert(!Rules::Ahead(belief.Position,belief.Velocity,{1000,10,1901})); | ^~~~~ /tmp/err-policy-tki2ggiz/check.cpp:284:55: error: ‘Rules’ is not a class, namespace, or enumeration 284 | Array oversized(1025,{1000,10,1300});assert(!Rules::FromPolyline(oversized,belief.Position,belief.Velocity,{1000,10,1350},reserved,result,score,heading)); | ^~~~~ Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_hq_mounted_intercept.py", line 25, in run(r''' ~~~^^^^^ #include ^^^^^^^^^^^^^^^^^^ ...<73 lines>... } ^ ''') ^^^^ File "/home/jakub/devel/escapistsrereintroduced/tests/policy_harness.py", line 13, in run subprocess.run(['g++','-std=c++17','-Wall','-Werror',str(p/'check.cpp'),'-o',str(p/'check')],check=True) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.14/subprocess.py", line 578, in run raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) subprocess.CalledProcessError: Command '['g++', '-std=c++17', '-Wall', '-Werror', '/tmp/err-policy-tki2ggiz/check.cpp', '-o', '/tmp/err-policy-tki2ggiz/check']' returned non-zero exit status 1. Traceback (most recent call last): File "/tmp/erri-mounted-intercept-root-1247/run-suite.py", line 21, in try:module.check() ~~~~~~~~~~~~^^ File "/home/jakub/devel/escapistsrereintroduced/tools/check.py", line 88, in check subprocess.run([sys.executable,str(ROOT/'tests'/name)],check=True) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/erri-mounted-intercept-root-1247/run-suite.py", line 12, in track try:result=original(args,*a,**kw) ~~~~~~~~^^^^^^^^^^^^^^ File "/usr/lib/python3.14/subprocess.py", line 578, in run raise CalledProcessError(retcode, process.args, output=stdout, stderr=stderr) subprocess.CalledProcessError: Command '['/usr/bin/python3', '/home/jakub/devel/escapistsrereintroduced/tests/test_hq_mounted_intercept.py']' returned non-zero exit status 1. PASS: 35 prefabs have unique saved root entity IDs PASS: 299 original script entries tracked across 18 unfinished responsibilities PASS: 1 isolated addons, acyclic dependencies, 57 unique resources, exact vanilla/authorized external references Suite exit 1 programs 19 unchanged True