fix(physics): tighten FindWalkableSphere test assertions + header

Code review feedback on Task 2 commit 7f55e14:

- Tests 1 and 2 now assert on adjustedCenter.Z (was the wrapper's
  primary behavioral contract — sphere placed on polygon plane —
  but it was unverified). Math derived from AdjustSphereToPlane:
  iDist = (dpPos - radius) / dpMove; new center = center - movement * iDist.
- Test 2 also gains the hitPoly.Plane.Normal.Z assertion that
  Test 1 already had.
- Test 4 comment slope-angle clarification.
- BSPQuery.cs FindWalkableSphere section header now notes this is
  not a direct retail port (it wraps BSPNODE::find_walkable +
  BSPLEAF::find_walkable via the existing FindWalkableInternal).

No behavior change. Build clean; 4/4 tests pass; same 8 pre-existing
failures.

Spec: docs/superpowers/specs/2026-05-19-indoor-walkable-plane-bsp-port-design.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-05-19 21:41:13 +02:00
parent 7f55e14cd7
commit 86ecdf9ee1
2 changed files with 10 additions and 1 deletions

View file

@ -1133,6 +1133,8 @@ public static class BSPQuery
// -------------------------------------------------------------------------
// find_walkable_sphere — "stand here, find my contact plane"
// Indoor walkable-plane synthesis entry point (Phase 2 follow-up 2026-05-19).
// Not a direct retail port; wraps BSPNODE::find_walkable + BSPLEAF::find_walkable
// (acclient_2013_pseudo_c.txt:326211, :326793) via the existing FindWalkableInternal.
// -------------------------------------------------------------------------
/// <summary>