From 378316af15cafd710b3113805aca19b0f4610d5a Mon Sep 17 00:00:00 2001 From: Erik Date: Mon, 6 Jul 2026 22:31:36 +0200 Subject: [PATCH] docs #181: the vsync decision gate - all camera/sweep mechanisms now Ghidra-verified faithful; residual mm limit cycle likely retail-class, visible only via unsynced tearing Co-Authored-By: Claude Fable 5 --- docs/ISSUES.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/ISSUES.md b/docs/ISSUES.md index 8779d689..0f34e657 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -107,6 +107,23 @@ instrument: a capture session with the game window UNOBSTRUCTED (no chat overlay snip tool) while the user confirms the flicker is visibly active, + the user's description of exactly WHAT changes (wash extent? the stripe? brightness?).** +**PORT + VERIFICATION SWEEP (2026-07-06 night, after the user's "retail camera is rock +steady" axiom):** retail's viewer step subdivision ported (`3f34bca0` — radius-anchored +steps, remainder final step, viewer-exempt small-offset abort; `calc_num_steps` +0x0050a0b0 / `find_transitional_position` 0x0050bdf0 via Ghidra, pseudocode +`docs/research/2026-07-06-viewer-step-subdivision-pseudocode.md`). The wall-press +wander is UNCHANGED by it: a bit-exact 12-frame limit cycle (~130 µm/frame inward creep +×11, one 2.6 mm snap; `Issue181WallPressEquilibriumTests` orbit dump). With +`adjust_to_plane` + `adjust_sphere_to_poly` + the stepping now ALL Ghidra-verified +faithful, the residual mm cycle is most plausibly retail-class plateau physics — +invisible at retail's 60 fps vsync, tear-interleaved into visible stripes at our +~1500 fps unsynced (VSync defaults OFF, GameWindow.cs:1096). **DECISIVE USER TEST: +VSync ON (F11 → Display), camera pressed at the wall/opening — stripes gone ⇒ the +artifact = mm wobble × unsynced tearing (fix = default display mode decision, no +physics change); stripes remain ⇒ cdb-trace retail's wall-pressed `viewer` per frame +to measure whether retail truly holds sub-mm (then the divergence is structural and +the trace names it).** + **REFINEMENT (same night, after the a7-pseudocode CORRECTION-2 re-read):** the pool is ALREADY resident-scoped + player-anchored (`d8984e87` deleted the flood-scoped slice-1), so "flood-scoped lights" is NOT the amplifier as first framed. Measured: 0x0181's