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 Tick clock initialization admits fractional first ticks and expires without extending the original start PASS: actual finite conservation/deadline/callback policies; read-only selection, bounded once-only inventory submission and no can refill; native transfer not executed PASS: actual exact-context membership, bounded identity/reach gates, native start/cache/eligibility ordering and no duplicate/foreign action start; fuel manager identity and empty-can headroom guards checked PASS: actual detached node/value snapshot and conservation refuse mismatched lengths before indexed reads, retain original identities under native out-array aliasing and log bounded counts once; native cause remains unknown PASS: actual mine evidence sealing/recovery, historical coarse publication, caps, canonical ownership, marker join retry/owner-change/stop; native arming and replicated vector-array transport untested PASS: actual full document recovery retains authored/sealed targets, one shared spent ledger, retry/exhaustion semantics and canonical multi-player ownership alongside supplemental mine intel PASS: actual infantry search suspension, quiet grace, finite resume, expiry/replacement and defensive/ownership boundaries PASS: infantry combat gate precedes radio delivery and preserves non-task transports PASS: actual HQ contact transition wakes only fit squad members, cancels only task orders and logs changes once PASS: actual finite medicine grants, authored stock deduction, full-backpack refusal/pouch fallback, no loot replenishment, unresolved-operation quarantine and ownership/stop guards PASS: only recent native detected/identified threats suspend hunter travel; stale/disarmed/destroyed contacts cannot strand patrols PASS: actual hunter combat transition cancels only its travel once, holds through renewed contact and resumes after quiet; unregistered startup preserved PASS: captured sighting retention, immutable details, expiry, replay rejection, bounded sound uncertainty/cooldown, radio loss, priority and overdue-status fairness PASS: arrow press/release, held keys, opposing keys, disabled/menu input and firearm-only retention PASS: town trigger and hard 700m exclusion for all observers, empty/invalid positions and final-check crossings PASS: exact finite site squads, invalid roster/count rejection, committed-site spacing and safe fallback boundary PASS: mortar couriers use the mobile site team and refuse permanent-only garrisons PASS: omitted preferred mortar depot selects a surviving owned camp/mobile team; no camp, foreign cache and permanent-only sites are unavailable; historical priority retained PASS: real-session mortar deadline, failed-support convoy admission and hunter survivor/recovery gates PASS: native-route retry preserves delivered target, limits attempts and suspends during combat PASS: stale/deleted AI utility cannot receive Complete; mortar HQ preflight withholds unsafe orders; mounted convoy cover never creates infantry Defend PASS: flight crew affiliation and group precede native boarding; preparation remains bounded even while passengers wait PASS: factionless/deleted map targets do not abort perception; faction lookup tolerates teardown; deleting helicopter releases without capture/engine access PASS: shoot adapter waits for a physical round; bounded same-shell retries, interrupted/never-started loads, committed no-retry, order/owner changes and normal native delegation PASS: missing/invalid faction crew defers before any native spawn or allowance insertion; all registered RHS factions have explicit soldier and medic profiles PASS: vehicle radio issued once; pending, refusal and looting cannot duplicate or fabricate a physical radio link PASS: actual vehicle-radio link requires the original seated crew, physical manpack and live uncaptured mission vehicle; looting, dismount, release and teardown remove it PASS: actual hunter release preserves survivors/HQ, releases driving ownership once, delegates capture/teardown, and excludes prison/patrol/mortar from generic objective defence PASS: real opening road geometry enforces wide azimuths; fresh delivered contact preempts patrol cooldown, respects radio failures and does not starve in-flight interception PASS: actual scoped 10% tighter REGULAR aim error and alert perception; preserves equipment multiplier and restores vanilla behavior when unbound PASS: physical inspection and parent-wreck retention; server-only searched/report delivery unlocks native cleanup once with a 300-second delay PASS: bounded same-group empty-spawn retries, no casualty refill, queue retirement, delivery-gated intel, prepared-team reuse, throttled diagnostics and LOD release PASS: production airborne memory confidence, persistence, ground coverage, confirmed losses, artillery veto, cooldown and invalid-input rules PASS: production cover retains the carried HQ target until its deadline; airport reload waits until the drop pass and cover have finished PASS: air logistics reservation preserves delivered search until radio handoff, excludes guards/combat/in-flight orders, and quarantines unresolved native loads/moves PASS: actual ammunition cargo selector handles empty rifle/machinegun/sniper magazines, preserves loaded variants, excludes auxiliary launchers and tolerates missing native metadata PASS: original 15-minute launch/loss cadence, active/captured timer disarm, saved delay reset, stop, 300m orbit and bounded close-contact standoff at 30/60/120 Hz PASS: actual aircraft-removal notification guards owner/server/active/stop and schedules one full delay without replay extension PASS: hill prominence/elevation, actual road edges/heights/bends and server-only finite scout admission, pending stock, timeout and no replacements/refills PASS: mortar duty scope excludes players, other crews, stopped/client/inactive states; only destruction releases an active assignment, while the gunner may approach the gun PASS: random mode restrictions, full numeric ranges, independent calendar dates and strict daylight boundaries PASS: actual killais eligibility includes the 1000m boundary, excludes players/retained bodies/dead/non-character entities and checks full 3D distance PASS: actual generation scheduler bounds each tick, enforces deadline/candidate ceiling, validates fallback, commits only accepted positions, skips only dispensable sites, preserves required objectives/intel, and resets the next search budget PASS: terrain placement samples world bounds, retains streaming candidates, bounds waits/work, rejects foreign fallbacks, preserves objectives/intel and validates completion PASS: actual navigation readiness supports static meshes, yields only for loadable streaming tiles and refuses unreachable positions PASS: universal connector, embedded/standalone exports, multiple terrains, stable IDs, native nav configs, missing-nav visibility, path validation and overwrite protection PASS: airfield detection accepts physical runways/towers and bounded authored markers, rejects unrelated props, water and out-of-world markers, and samples terrain height PASS: configured airport parsing, bounded readiness, stale admission rejection and cleanup wiring PASS: explicit CLI opt-in, disabled/editor guards and mission-header airport precedence PASS: singleton identity guards, paired faction deserialization and client world-cleanup wiring PASS: task/map/respawn getters survive delayed old destruction and preserve ordinary-mode behavior PASS: replication hierarchy refuses absent/aliased nodes and establishes delivery dependencies idempotently PASS: standalone old faction delegates collected once, with null/deleted owners ignored PASS: actual faction resolution reserves explicit roles, samples without replacement, substitutes disabled selections, and rejects duplicate/unknown/missing choices and insufficient pools PASS: Random all submits persistent random roles immediately; manual mixed choices, stale/unauthorized UI guards and debounce preserved PASS: actual content policy gates parent packs, individual factions, faction identity and finite group rotation with vanilla fallback PASS: actual delivered road eligibility, ahead projection without chords, reservations, stock road query bounds, terrain/water/obstruction refusal and clean outputs PASS: actual delivered-task lineage, expiry, old-order retention, native commit, release, road precision expiry and duplicate delivery PASS: actual original-roster local handoff,100m3D bound,busy carrier/budget exclusion,origin interruption including deletedsource,normal radio delivery and per-source replay history PASS: actual visual intake retains source/time/position/id, rejects replay, prefers usable own route, excludes simultaneous callers and conservatively resets negative-sweep dwell PASS: actual fixture local/radio gating, immutable source/time/position, interrupted-report exclusion and exact-owner cleanup PASS: local-handoff runner refuses wrong project/round count/insufficient deadline before runtime work PASS: actual fixture allocator terminal/unsubmitted guard, original-group lookup and both candidate gates PASS: actual report-derived waypoint insertion/order and tighter positive radii; no formation navigation claim PASS: actual Place/Stop waits native pose update, bounds four attempts, preserves original position, restores pending/settled placement and respects ownership/accepted-move quarantine PASS: actual fixture current/original recipient ownership, unresolved transfer cleanup, exact-token release and idempotent Stop PASS: actual fixture phased-cargo readiness, bounded callbacks, captured-stock mixed-caliber selection/continuation, reservation cleanup and component magazine counts PASS: actual inventory-fixture setup uses ordinary prison unlock before constructing its convoy-waiting probe; failed unlock cannot run fixture PASS: actual authored storage anchors, native trace flags, own-hierarchy exclusion, external wall/vehicle obstruction, range, unknown geometry and bounded context refusal PASS: actual convoy binding, finite identities, disjoint tokens, shared report replay/cooldown, original recipients and HQ cleanup PASS: actual finite convoy supply pool; immutable slots, shared demand state, sparse/capped discovery and permanent shutdown PASS: actual HQ rotates finite donors, skips unavailable/contacted trucks, uses delivered reports and dispatches at most one trip per planning cadence PASS: actual original turret identity, native/canonical guards, scoped maximum-skill profile, reset, dismount/reboard, requested-skill preservation and restoration PASS: bounded HQ startup/memory windows and outcome-specific full-route deadlines PASS: explicit escape-route skips only administrator stress, preserving original full-fixture wait/failure paths PASS: normal escape route keeps ordinary catalog and generated placement; historical selectors remain unchanged PASS: actual read migrates old valid settings, preserves explicit disabled state, rejects invalid data; next-round feedback and fixed menu remain honest PASS: actual automatic convoy timing/authority/admission/one-attempt/manual-task/stop policy; native deployment unproved PASS: late authoritative failure reason refreshes open result; detach, mode change and success subscriptions preserved infantry resupply actual rules, radio transitions, owned cleanup and unresolved-operation tests passed PASS: actual resupply Roster preserves permanent release, original slot mapping and bounded ownership PASS: actual one-mine original carrier selection, settled startup, shared finite claims, no refund after submission PASS: actual HQ startup grant readiness forwarding is authoritative and fail-closed PASS: actual finite PMN4 one-to-two entitlement, pinned original ownership, shared commit, physical custody, callback quarantine/deletion and no retry PASS: actual bounded empty-return and finite delivery; phase-isolated callbacks, exact ownership proof, stop quarantine and original actor/vehicle boundaries PASS: actual shared finite identity reservation; competing consumers, submission permanence, stale cleanup and96-item bound PASS: actual carried-mounted swap, shared committed claim, physical slot reach, exact two-way proof, uncertainty and terminal cleanup PASS: actual mounted pickup, exact finite ownership, pre-submission commit, physical custody, bounded callback and quarantine lifecycle; no native coverage claim PASS: actual mounted courier admission, radio, individual orders, two-stage transfer, reboarding, token cleanup and quarantine lifecycle PASS: actual scoped crew permit and native board completion/failure preserves foreign seats without teleport fallback PASS: actual shared mounted stock/history ownership, atomic exact HQ pair claim, and bounded stopped-owner proof polling PASS: actual carried/mounted early ammunition policy and status-first shared uplink; complete threshold, phases, cooldown, failures requested check-ins and non-urgent detached carried-mine status PASS: actual group radio startup preservation, finite native grants, callback quarantine, frozen selection/actor ownership and bounded observation PASS: actual maintenance native-stock check rejects missing/duplicate/wrong-identity/unowned/depleted/malformed stock and is read-only; native runtime not executed EEEEEEEEEEEEEEEEEE ====================================================================== ERROR: test_candidate_and_copy_mutations_refused (__main__.ExternalPackedTests.test_candidate_and_copy_mutations_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_crlf_project_and_exact_multiple_external_paks (__main__.ExternalPackedTests.test_crlf_project_and_exact_multiple_external_paks) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_exact_identity_closure_and_no_loose_files (__main__.ExternalPackedTests.test_exact_identity_closure_and_no_loose_files) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_explicit_v4_and_frozen_v2_rejection (__main__.ExternalPackedTests.test_explicit_v4_and_frozen_v2_rejection) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_external_link_retarget_refused (__main__.ExternalPackedTests.test_external_link_retarget_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_external_loose_source_refused (__main__.ExternalPackedTests.test_external_loose_source_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_external_runtime_mutation_refused (__main__.ExternalPackedTests.test_external_runtime_mutation_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_mutated_candidate_before_copy_refused (__main__.ExternalPackedTests.test_mutated_candidate_before_copy_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_native_errors_are_not_waived (__main__.ExternalPackedTests.test_native_errors_are_not_waived) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_policy_and_cache_mutations_refused (__main__.ExternalPackedTests.test_policy_and_cache_mutations_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_private_copy_exact_six_links_and_schema (__main__.ExternalPackedTests.test_private_copy_exact_six_links_and_schema) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_profile_contamination_and_vanilla_retarget_refused (__main__.ExternalPackedTests.test_profile_contamination_and_vanilla_retarget_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_provenance_tamper_refused (__main__.ExternalPackedTests.test_provenance_tamper_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_redirected_profile_refused (__main__.ExternalPackedTests.test_redirected_profile_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_request_gates (__main__.ExternalPackedTests.test_request_gates) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_runtime_evidence_rejects_redirects_extra_missing_and_loose (__main__.ExternalPackedTests.test_runtime_evidence_rejects_redirects_extra_missing_and_loose) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_saves_addon_and_native_provenance_tamper_refused (__main__.ExternalPackedTests.test_saves_addon_and_native_provenance_tamper_refused) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ====================================================================== ERROR: test_valid_full_nine_mount_database_proof (__main__.ExternalPackedTests.test_valid_full_nine_mount_database_proof) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py", line 36, in setUp self.packed=v4.request(self.args,self.root) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 58, in request require(session.is_absolute() and session.parent==Path('/tmp') and session==session.resolve() and re.fullmatch(r'erri-packed-chat-[A-Za-z0-9_-]+',session.name) and not session.exists() and not session.is_symlink(),'Packed v4 requires a new canonical /tmp/erri-packed-chat- session') ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/jakub/devel/escapistsrereintroduced/tools/packed_external.py", line 20, in require if not condition: raise ValueError(message) ^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: Packed v4 requires a new canonical /tmp/erri-packed-chat- session ---------------------------------------------------------------------- Ran 18 tests in 0.075s FAILED (errors=18) 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, 56 unique resources, exact vanilla/authorized external references Traceback (most recent call last): File "/home/jakub/devel/escapistsrereintroduced/tools/check.py", line 79, in if __name__=='__main__':check() ~~~~~^^ File "/home/jakub/devel/escapistsrereintroduced/tools/check.py", line 77, in check subprocess.run([sys.executable,str(ROOT/'tests'/name)],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 '['/usr/bin/python3', '/home/jakub/devel/escapistsrereintroduced/tests/test_packed_external_game.py']' returned non-zero exit status 1.