acdream/tests/AcDream.Core.Tests/Physics
Erik 9b1e6fc637 fix(physics): #297 — keep the PWD bitfield live so PK status reaches the client
The user typed @pklite and then walked straight through other PKLite players.

Root cause: ClientObject.PublicWeenieBitfield was written exactly once, from the
0xF745 CreateObject parse, and never refreshed. ACE's only PK-change message is
PropertyInt.PlayerKillerStatus (134) over 0x02CE/0x02CD, which we parsed and
stored into Properties.Ints[134] but never translated back into the bitfield —
and ACE never re-sends a PublicWeenieDesc at all (EnqueueBroadcastUpdateObject
has zero live callers), so that property is the ONLY signal a client can learn
from. Both sides of the collision test read the frozen value, so
CollisionExemption's "4c. both PKLite -> collide" rule could never fire.

Retail's missing port: PublicWeenieDesc::SetPlayerKillerStatus @0x005AC7C0
rewrites _bitfield in place — PK(4) -> (b & 0xfddfffff) | 0x20; PKLite(0x40) ->
(b & 0xffdfffdf) | 0x2000000; Free(0x20) -> (b & 0xfdffffdf) | 0x200000; else
b &= 0xfddfffdf. Mutually exclusive, verified byte-for-byte, with input values
confirmed against retail's own PKStatusEnum (acclient.h:6412-6427), not just
ACE's. Driven from ACCWeenieObject::OnStatUpdated @0x0058DF20 case 0x86.

The fix rewrites the value at its source rather than patching consumers. Two
review rounds were needed because the first pass missed that there are TWO
snapshot stores: InboundPhysicsStateController keeps its own private _snapshots
dictionary, and every untimestamped-field merge (ApplyAcceptedObjDesc and
friends) reads `old` from THAT store, not from RuntimeEntityRecord.Snapshot.
Refreshing only the active record left the target-side shadow flags correct
until the remote's next equip or unequip — ACE broadcasts an ObjDesc on every
one — at which point the appearance path rebuilt the registration from the
frozen spawn and dropped the bit permanently. The regression test demanded by
review is what surfaced that; it is verified discriminating (reverting gives
Actual: 8 instead of 33554440).

Five stores now hold this value, kept coherent from one source by two
ObjectUpdated subscribers plus the appearance-rebuild path. The two shadow-flag
writers are the same invalidation applied at the two edges that can invalidate
it, not competing authorities — review enumerated every drift path and closed
each. That coherence invariant is new as of this commit and is recorded as
register row AP-134, with AP-133 as the precedent for filing a row when the
danger is a future writer rather than current behaviour.

Also corrects TS-23's retirement narrative, which claimed every mover-flags call
site read the mover's "real" PK bits from 2026-07-30. The bits existed but their
source was frozen, so that only became true here; the site enumeration also
missed RuntimeSetPositionMoverPreparation, a seventh site that decodes the
snapshot directly.

Unblocks #298 (melee/missile admission needs the local player's own PKLite bit).
Follow-ups filed: #300 (Properties.Ints[134] vs bitfield mirror gap), #301 (same
defect class for radar blip colour and radar behaviour), #302 (a pre-existing
PortalProjection allocation-assertion flake, 1 in 6, found while verifying this
gate), #303 (LiveEntityPvpBitfieldSync is App-resident but Runtime-owned-state).

Gates: complete Release solution 10,895 passed / 4 skipped / 0 failed (baseline
10,887 including #299). Adversarial + retail-conformance review PASS after one
FAIL round. Every new test discrimination-verified by reverting the fix.
Connected acceptance NOT run — needs a live two-client PKLite session.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 20:59:01 +02:00
..
Motion feat(physics): P5 commit 1 - port ConstraintManager leash distance constants (#167) 2026-07-30 11:54:35 +02:00
A6P7DispatchRulesTests.cs feat(physics): port retail projectile integration 2026-07-14 11:43:11 +02:00
AnimationCommandRouterTests.cs feat(R2-Q4): adapter cutover — SetCycle/PlayAction rehosted on PerformMovement; Fix B / fast-path / stop-anim fallback / G17 gate DELETED 2026-07-02 21:41:27 +02:00
AnimationHookRouterTests.cs feat(anim): Phase E.1 hook router + GameWindow wiring 2026-04-18 16:30:23 +02:00
AnimationSequencerCutoverTraceTests.cs fix(runtime): align portal and movement presentation 2026-07-17 08:48:27 +02:00
AnimationSequencerTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
Ap10WaterSemanticsTests.cs fix(physics): AP-10 - restore retail's 0.1m dry-corner water sink-in; wire WATER_CONTACT_TS 2026-07-30 10:52:39 +02:00
Ap71EntryRestrictionGateTests.cs fix(physics): AP-129 review fix - port CanMoveInto/IsAllowedIn, stop failing closed 2026-07-30 11:36:11 +02:00
BSPQueryTests.cs fix #137 (mechanism 2): BSP full-hit stubs leaked sliding normals — the corridor absorbing wedge 2026-07-05 18:08:29 +02:00
BSPStepUpFixtures.cs feat(physics): Phase L.2.1+L.2.2 — BSP step-up and rooftop landing 2026-04-29 16:16:39 +02:00
BSPStepUpTests.cs fix(physics): restore retail path-6 collision response 2026-07-31 13:44:55 +02:00
BuildShadowCellSetTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CameraCornerSealReplayTests.cs fix(physics): traverse prepared indoor portal topology 2026-07-27 00:02:44 +02:00
CellarLipWedgeTests.cs chore(p2): strip cellar-lip dispatch-trace probes after visual confirmation 2026-06-05 09:24:20 +02:00
CellArrayTests.cs feat(physics): Stage 1 — CellArray ordered/deduped cell collection (retail CELLARRAY) 2026-06-03 08:54:45 +02:00
CellarUpTrajectoryReplayTests.cs fix(physics): #265 landing-bounce family - retail check_contact seed + velocity-free landing commit 2026-07-30 20:12:06 +02:00
CellDumpRoundTripTests.cs feat(phys): A6.P3 #98 Step 2 — cell-dump probe + roundtrip test 2026-05-23 15:16:56 +02:00
CellGraphMembershipTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CellGraphPopulationTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CellMarchLandblockPreservationTests.cs fix(teleport D): cell-march preserves seed landblock id when no resident LB (no more lbX=0 outbound) 2026-06-22 13:38:48 +02:00
CellPhysicsPortalWiringTests.cs feat(physics): Phase 2 — wire CellBSP + Portals into CellPhysics 2026-05-19 16:52:20 +02:00
CellSurfaceTests.cs refactor(physics): remove parsed collision graphs 2026-07-25 18:21:19 +02:00
CellTransitAddAllOutsideCellsTests.cs fix(phys): #106 — outdoor membership crosses landblock boundaries (LandDefs global-lcoord port) 2026-06-09 23:10:59 +02:00
CellTransitCheckBuildingTransitTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CellTransitFindCellListTests.cs feat(physics): Phase 2 — BuildingPhysics + CheckBuildingTransit 2026-05-19 17:34:38 +02:00
CellTransitFindCellSetTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CellTransitFindTransitCellsSphereTests.cs fix(physics): traverse prepared indoor portal topology 2026-07-27 00:02:44 +02:00
CellTransitFindVisibleChildCellTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
CellTransitTests.cs T6 (BR-7) C4: straddle-only outside-add (A6.P5 widening DELETED) + #90 stickiness removed 2026-06-11 14:44:49 +02:00
CollisionExemptionTests.cs fix(physics): #299 — port retail's mover-side IsImpenetrable exemption branch 2026-08-03 20:13:05 +02:00
CollisionPrimitivesTests.cs feat(physics): port 9 collision primitives from acclient.exe (chunk_00530000.c) 2026-04-12 23:53:47 +02:00
CollisionShadowVerifierTests.cs perf(physics): cut production traversal to flat assets 2026-07-25 17:00:04 +02:00
CylSphereFamilyTests.cs fix #172: port the retail CCylSphere collision family (platform step-up) 2026-07-05 14:52:28 +02:00
DoorBugTrajectoryReplayTests.cs feat(net): port retail physics spawn and event timestamps 2026-07-14 00:22:17 +02:00
DoorCollisionApparatusTests.cs docs(physics): #165 diagnostic pass - rule out (a)/(b), stop at (c) 2026-07-30 10:01:11 +02:00
DoorSetupGfxObjInspectionTests.cs test(phys): A6.P4 door inside-out — locate cottage wall, identify corner-slide hypothesis 2026-05-25 08:34:52 +02:00
DoorwayMembershipReplayTests.cs test(core): commit doorway-threshold fixture for DoorwayMembershipReplayTests (portable) 2026-06-02 15:22:57 +02:00
EdgeSlideBackProbePrecipiceSlideTests.cs docs+test(physics): retire stale TS-1 row; file AD-53/AD-54 for its two acdream-only branches 2026-07-30 08:13:20 +02:00
EncumbranceSystemTests.cs feat(physics): Campaign P P1 - stat-coupled movement (burden/stamina/vitae) 2026-07-30 08:18:06 +02:00
EntityCollisionFlagsTests.cs fix(physics): TS-23 - plumb real PK/PKLite/Impenetrable mover flags 2026-07-30 09:52:55 +02:00
FindEnvCollisionsMultiCellTests.cs T6 (BR-7) C3: per-cell shadow architecture - flood registration, building channel, per-cell query; b3ce505 stopgap DELETED (closes #99) 2026-06-11 14:37:50 +02:00
FlatBspQueryDifferentialTests.cs fix(physics): traverse prepared indoor portal topology 2026-07-27 00:02:44 +02:00
FlatCollisionAssetBuilderTests.cs feat(physics): define deterministic flat collision assets 2026-07-25 14:52:47 +02:00
FlatCollisionInstalledDatTests.cs fix(physics): traverse prepared indoor portal topology 2026-07-27 00:02:44 +02:00
FramesStationaryFallTests.cs feat(#182): frames_stationary_fall round-trip in the kept transition internals (Slice 1b/1c) 2026-07-07 14:11:35 +02:00
GfxObjDumpRoundTripTests.cs feat(phys): A6.P3 #98 — GfxObj dump infrastructure (ACDREAM_DUMP_GFXOBJS) 2026-05-23 20:24:26 +02:00
HandleAllCollisionsTests.cs feat(vfx): port retail hidden and teleport presentation 2026-07-14 14:59:48 +02:00
HumanoidMotionTableRootMotionTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
IndoorContactPlaneRetentionTests.cs fix(physics): hold retail cell across inner retries 2026-07-31 12:40:50 +02:00
IndoorWalkablePlaneTests.cs Revert "fix(physics): remove per-frame indoor walkable-plane synthesis" 2026-05-20 09:17:24 +02:00
InitialPlacementOverlapTests.cs feat(vfx): port retail hidden and teleport presentation 2026-07-14 14:59:48 +02:00
InterpolationManagerTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
InWorldLinkGuardTests.cs fix(R4-V5): remote transition links stripped by the detached-object guard - door swings snapped (adds register TS-40) 2026-07-03 15:10:16 +02:00
Issue98CellarUpReplayTests.cs test(phys): A6.P3 #98 Step 3 — deterministic replay harness 2026-05-23 15:25:40 +02:00
Issue108CellarAscentViewerReplayTests.cs #108-residual apparatus: vertical cellar-ascent viewer harness - membership/viewer layer EXONERATED 2026-06-12 22:05:06 +02:00
Issue133DungeonTeleportPrefixTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
Issue137CorridorSeamInspectionTests.cs fix #137 (window climb): the player's collision capsule topped out at 1.2m — head sphere 0.63m too low 2026-07-05 19:57:11 +02:00
Issue137CorridorSeamReplayTests.cs fix #137 (window climb): the player's collision capsule topped out at 1.2m — head sphere 0.63m too low 2026-07-05 19:57:11 +02:00
Issue137SlidingNormalLifecycleTests.cs fix #137 (corridor phantom resolved): slide_sphere opposing branch returns Collided; the 'wall' was synthetic 2026-07-05 18:27:40 +02:00
Issue147ArwicBuildingsDumpTests.cs fix(physics): #147 — far-town city/perimeter walls had no collision (portal-less buildings skipped) 2026-06-24 16:24:48 +02:00
Issue165RemoteWallPenetrationDiagnosticTests.cs docs(physics): #165 diagnostic pass - rule out (a)/(b), stop at (c) 2026-07-30 10:01:11 +02:00
Issue175HubDoorPoseInspectionTests.cs fix #175 (take 2): the cycle lookup used the bare style key — silent no-op 2026-07-05 17:10:19 +02:00
Issue180CorridorSweepHysteresisReplayTests.cs fix #180 (root): retail adjust_to_plane - PathClipped stops now resolve to the contact point, not a step boundary 2026-07-06 17:20:46 +02:00
Issue182CrowdJumpTests.cs feat(#182): route player collision response through the ported UpdateObjectInternal chain (Slice 2b/2c) 2026-07-07 14:25:47 +02:00
Issue185OutdoorStairsSeamReplayTests.cs test(physics): harden tight-gap collision controls 2026-07-31 12:17:35 +02:00
Issue186ConnectorCellGeometryInspectionTests.cs fix(#186): render side-cull mis-sided thin connectors — use dat PortalSide bit, not AABB centroid 2026-07-08 15:06:33 +02:00
Issue188FadingDoorMotionTableInspectionTests.cs feat(#188): fading-wall + sliding-door translucency; hold open past animation settle 2026-07-09 09:17:50 +02:00
Issue265SteepSlopeCaptureBisectTests.cs fix(physics): #265/#166 - stop zeroing grounded residual velocity, wire GroundNormal 2026-07-30 19:28:28 +02:00
Issue273HoltburgTightGapReplayTests.cs test(physics): harden tight-gap collision controls 2026-07-31 12:17:35 +02:00
Issue176177SeamTransitLagTests.cs docs+test #176/#177: 12 mechanisms refuted, apparatus shipped, probe protocol staged 2026-07-05 21:20:03 +02:00
LandDefsBlockOffsetTests.cs feat(physics #145): Slice 1 — Position/Frame types + LandDefs.GetBlockOffset (0x0043e630) 2026-06-21 10:30:20 +02:00
LandDefsTests.cs fix(phys): #106 — outdoor membership crosses landblock boundaries (LandDefs global-lcoord port) 2026-06-09 23:10:59 +02:00
LandingBounceSeedingTests.cs fix(physics): #265 landing-bounce family - retail check_contact seed + velocity-free landing commit 2026-07-30 20:12:06 +02:00
MissileCollisionRulesTests.cs feat(physics): port retail projectile integration 2026-07-14 11:43:11 +02:00
MotionCommandCatalogDatTests.cs feat(L.1b): dual MotionCommand catalog — AceModern runtime + Retail2013 conformance 2026-06-30 22:13:36 +02:00
MotionCommandCatalogTests.cs feat(L.1b): dual MotionCommand catalog — AceModern runtime + Retail2013 conformance 2026-06-30 22:13:36 +02:00
MotionCommandResolverTests.cs fix(anim): Phase L.1b route motion commands 2026-04-28 10:46:22 +02:00
MotionInterpreterDoMotionFamilyTests.cs feat(R3-W5): DoMotion family verbatim + the ONE DoInterpretedMotion + per-op zero-tick flush (closes J3, J4, J9, J14) 2026-07-03 08:57:33 +02:00
MotionInterpreterFunnelTests.cs feat(physics): R5-V4 behavioral slice — head stance dispatch (all mt) + #164 autonomy bit + mt-0 wire flags 2026-07-05 10:18:26 +02:00
MotionInterpreterGroundLifecycleTests.cs feat(R3-W4): ground transitions + lifecycle verbatim; K-fix18 DELETED (closes J8, J10, J11-shape, J12, J13, J18, J19) 2026-07-02 23:01:31 +02:00
MotionInterpreterJumpFamilyTests.cs feat(physics): P5 commit 1 - port ConstraintManager leash distance constants (#167) 2026-07-30 11:54:35 +02:00
MotionInterpreterPendingMotionsTests.cs feat(R3-W2): pending_motions lifecycle + the MotionDone consumer — the R2 seam lands (closes J1, J17) 2026-07-02 22:24:56 +02:00
MotionInterpreterTests.cs fix(physics): movement-parity fixes - adjusted catch-up cap, autorun retail semantics, AP-30 retired 2026-07-30 15:04:17 +02:00
MotionNormalizationTests.cs feat(R3-W6): LOCAL PLAYER UNIFICATION — edge-driven retail input; UpdatePlayerAnimation + the synthesis layer DELETED (closes J15) 2026-07-03 09:19:56 +02:00
MotionSequenceGateTests.cs feat(runtime): own initial create residence transaction 2026-08-01 19:35:08 +02:00
MotionVelocityPipelineTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
MovementSystemTests.cs fix #266: retail run-rate 800 branch is exact-equality sentinel, not a cap 2026-07-30 19:22:41 +02:00
ObjectRangeMathTests.cs fix(items): use retail cylinder range for loot windows 2026-07-17 20:32:34 +02:00
ObstructionEtherealTests.cs fix(physics): port retail Layer-2 ethereal override -- open doors passable (pc:276961) 2026-06-24 21:03:08 +02:00
PhysicsBodyCellSyncTests.cs fix(portal): synchronize destination presentation state 2026-07-16 21:17:13 +02:00
PhysicsBodyTests.cs fix(physics): #265/#166 - stop zeroing grounded residual velocity, wire GroundNormal 2026-07-30 19:28:28 +02:00
PhysicsDataCacheProductionTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
PhysicsDiagnosticsTests.cs feat(core): Phase W Stage 0 — [cell-swept] diagnostic (swept vs static cell, no behavior change) 2026-06-02 14:08:00 +02:00
PhysicsEngineAdjustPositionTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
PhysicsEngineResidencyTests.cs refactor(streaming): extract landblock physics publisher 2026-07-21 21:13:22 +02:00
PhysicsEngineTests.cs fix(physics): make collision activation starvation-free 2026-07-31 18:34:46 +02:00
PhysicsSetPositionTests.cs feat(runtime): seal dormant SetPosition evaluations 2026-08-01 11:31:58 +02:00
PhysicsStateFlagsTests.cs feat(net): port retail physics spawn and event timestamps 2026-07-14 00:22:17 +02:00
PlayerWeenieTests.cs fix(physics): TS-23 - plumb real PK/PKLite/Impenetrable mover flags 2026-07-30 09:52:55 +02:00
PortalInfoTests.cs feat(physics): Phase 2 — wire CellBSP + Portals into CellPhysics 2026-05-19 16:52:20 +02:00
PortalPlaneTests.cs feat(core): Phase B.3 — PortalPlane (plane math + crossing detection) 2026-04-12 18:17:48 +02:00
PositionFrameValidationTests.cs feat(net): port retail physics spawn and event timestamps 2026-07-14 00:22:17 +02:00
ProjectilePhysicsStepperTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
RemoteDeOverlapMechanismTests.cs fix(physics): #265 landing-bounce family - retail check_contact seed + velocity-free landing commit 2026-07-30 20:12:06 +02:00
RemoteMotionCombinerTests.cs fix(runtime): align portal and movement presentation 2026-07-17 08:48:27 +02:00
RemoteWeenieRunRateTests.cs fix(R4-V5): #160 remote run movetos in slow motion - remote interps had no weenie, so retail's run-rate chain never reached my_run_rate 2026-07-03 16:18:40 +02:00
RemoveCellsForLandblockTests.cs fix(physics): D8 — RemoveCellsForLandblock; cell transforms rebase per apply 2026-06-24 19:34:16 +02:00
ResolveCellIdTests.cs feat(physics): Phase 2 — BuildingPhysics + CheckBuildingTransit 2026-05-19 17:34:38 +02:00
ResolveResultOkTests.cs feat(A): wire SweepEye to the verbatim update_viewer (start-cell + fallbacks) 2026-06-05 11:10:32 +02:00
RestrictionObjPrevalenceInspectionTests.cs test(physics): P4 review - RestrictionObj prevalence inspection over the installed cell DAT 2026-07-30 11:01:10 +02:00
RetailEdgeResponseOrderingTests.cs fix(physics): restore retail path-6 collision response 2026-07-31 13:44:55 +02:00
RetailObjectActivityGateTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
RetailObjectManagerTailTests.cs fix(motion): restore retail object manager order 2026-07-19 21:40:14 +02:00
RetailObjectQuantumClockTests.cs feat(physics): port retail complete object frame pipeline 2026-07-20 09:10:31 +02:00
RetailObserverTraceConformanceTests.cs feat(physics): R5-V4 behavioral slice — head stance dispatch (all mt) + #164 autonomy bit + mt-0 wire flags 2026-07-05 10:18:26 +02:00
RetailPhysicsStateTransitionTests.cs feat(vfx): port retail hidden and teleport presentation 2026-07-14 14:59:48 +02:00
RetailStepDownPlacementTests.cs fix(physics): preserve retail step-down probe state 2026-07-31 13:24:25 +02:00
ServerControlledLocomotionTests.cs fix(combat): persist death and retarget on kill 2026-07-12 09:19:38 +02:00
ShadowObjectRegistryMultiPartTests.cs test(phys): Task 6 regression — Deregister clears _entityShapes cache 2026-05-24 15:22:30 +02:00
ShadowObjectRegistryTests.cs fix(physics): #297 — keep the PWD bitfield live so PK status reaches the client 2026-08-03 20:59:01 +02:00
ShadowRegistrationOverflowTests.cs fix(#185): landblock collision part-id uint32 overflow dropped stair steps 2026-07-08 10:07:50 +02:00
ShadowSetPositionCommitTests.cs fix(runtime): preserve hidden setposition collision ownership 2026-08-01 18:22:45 +02:00
ShadowShapeBuilderShapeSourceTests.cs fix #182: port CSphere collision family — retail-faithful crowd wiggle (retires TS-45) 2026-07-07 11:25:56 +02:00
ShadowShapeBuilderTests.cs refactor(world): extract live projection mechanics 2026-07-21 16:17:03 +02:00
SpawnPlacementSettlerTests.cs feat(runtime): C3c - production placement cutover: both hosts on the residence conductors (routes 1+8) 2026-08-02 18:10:33 +02:00
SphereCollisionFamilyTests.cs fix #182: port CSphere collision family — retail-faithful crowd wiggle (retires TS-45) 2026-07-07 11:25:56 +02:00
SphereIntersectsCellBspTests.cs fix(physics): #90 — sphere-overlap cell stickiness at doorway threshold 2026-05-20 20:30:36 +02:00
SphereIntersectsSphereConformanceTests.cs feat(physics): Task 2 — true sphere collision primitive (CSphere::intersects_sphere) 2026-06-24 19:08:53 +02:00
TeleportFarTownRunawayTests.cs fix(teleport D): cell-march preserves seed landblock id when no resident LB (no more lbX=0 outbound) 2026-06-22 13:38:48 +02:00
TerrainSurfaceTests.cs perf(physics): reuse reset-complete transition scratch 2026-07-25 14:37:02 +02:00
TransitionAllocationBaselineTests.cs perf(physics): reuse reset-complete transition scratch 2026-07-25 14:37:02 +02:00
TransitionCheckOtherCellsTests.cs chore(phys): A6.P3 #98 triage — revert neg-poly + bldg-check experiments 2026-05-23 15:11:49 +02:00
TransitionInsertIntoCellRetryTests.cs fix(physics): hold retail cell across inner retries 2026-07-31 12:40:50 +02:00
TransitionScratchDifferentialTests.cs perf(physics): reuse reset-complete transition scratch 2026-07-25 14:37:02 +02:00
TransitionScratchResetTests.cs perf(physics): reuse reset-complete transition scratch 2026-07-25 14:37:02 +02:00
TransitionTests.cs feat(physics): port retail projectile integration 2026-07-14 11:43:11 +02:00
TransitionTypesTests.cs refactor(physics): remove parsed collision graphs 2026-07-25 18:21:19 +02:00
Ts4Path6ConformanceTests.cs fix(physics): restore retail path-6 collision response 2026-07-31 13:44:55 +02:00
Ts4ProductionQuantumConformanceTests.cs fix(physics): validate retail cell containment roots 2026-07-31 14:48:26 +02:00
Ts4SteepRoofWedgeCaptureTests.cs test(physics): harden TS-4 production chronology 2026-07-31 14:08:51 +02:00
Ts46SphereListConformanceTests.cs fix(physics): TS-46 - seed the sweep from the Setup's own sphere list 2026-07-30 09:05:44 +02:00
WalkMissDiagnosticTests.cs feat(physics): WalkMissDiagnostic aggregator for ISSUES #83 probe spike 2026-05-20 10:31:39 +02:00
WeenieErrorCodeTableTests.cs feat(R4-V1): command-selection family + state widening (closes M2-mechanics, M11, M12, M15) 2026-07-03 11:13:15 +02:00