Moves ~300 lines of test simulation logic (Bresenham LOS, collision, procedural room generation, movement physics, dialogue triggers) from the production sim_bridge.gd autoload into a dedicated TestHarness class at scripts/protocol/test_harness.gd. Enforces D-020 information boundary — no game logic in the production client. SimBridge retains thin proxy properties and methods for backward compatibility with 13+ test files (zero test changes needed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>