docs #180/#181: bank the session state - both camera fixes verified, the flicker split to #181 (portal-flood vis flap on micron eye noise)
ISSUES: #180 marked both-fixes-shipped+log-verified; #181 filed with the full live evidence (vis 31<->32 every ~100-200 frames across a 517k-frame parked session, the dashed scissor-rect captures, the isolation-confound note - every pre-#180 isolation ran while the camera strobe was live); #176 status updated (site-A static stacking hole closed 87cddce2, residual = #181). Digests updated in claude-memory.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
87cddce24a
commit
d9a4ca2355
1 changed files with 58 additions and 8 deletions
|
|
@ -46,15 +46,58 @@ Copy this block when adding a new issue:
|
|||
|
||||
---
|
||||
|
||||
## #181 — Portal-flood output flaps on micron eye noise → cell (+ its scoped lights + scissor AABB) strobes in/out (~10 Hz)
|
||||
|
||||
**Status:** OPEN — mechanism PINNED from live evidence; the knife-edge test not yet identified
|
||||
**Severity:** HIGH (THE user-visible #176 flicker that survived the #180 camera fixes: washed
|
||||
regions with hard screen-space rectangle boundaries pulsing at a parked camera)
|
||||
**Filed:** 2026-07-06 (split from #176 after the #180 fixes exonerated the camera)
|
||||
**Component:** render — portal flood / clip-slot scissor degrade / light-visibility scoping
|
||||
|
||||
**Evidence (launch-176-leakfix.log, root 0x8A020142, camera parked all session):**
|
||||
`[flap]` vis count flips 31↔32 every ~100–200 frames (≈10×/s at ~1500 fps) for the
|
||||
ENTIRE 517k-frame session; the root's own portal products are stable except 2-dp
|
||||
print-rounding wobble (eye 49.15↔49.14, p3 D −0.81↔−0.82) — the swept eye carries
|
||||
micron-scale float-roundtrip noise (`[flap-sweep]` in/out differ ~7 µm; retail's parked
|
||||
viewer is bit-exact via the UpdateCamera dead-band `return viewer`). One cell deeper in
|
||||
the flood rides a knife-edge include/exclude test on that noise. Visible impact is
|
||||
double: the cell's lights are visibility-scoped (GameWindow light registration
|
||||
`cellId:` scoping), so a washed region's LIGHTING strobes, and the flapping cell's
|
||||
portal extends the union-AABB clip/scissor rect (AD-17 degrade path) — captured as a
|
||||
dashed axis-aligned rectangle boundary resizing frame-to-frame (scratchpad
|
||||
flip-1/flip-4 crops, t0b stills). Frame-pair pixel diffs: 2.7–5% of the game area
|
||||
changes per 150 ms at a fully parked, fresh session.
|
||||
|
||||
**Confound note:** every pre-#180 isolation (LIGHT_DEBUG=3, CLIP_DEBUG=1, etc.) ran
|
||||
WHILE the #180 camera strobe was live, so none of them cleanly cleared the render side
|
||||
— and CLIP_DEBUG=1 forced gl_ClipDistance slots only; the AABB-scissor degrade sibling
|
||||
may never have been disabled.
|
||||
|
||||
**Next step:** replay the flood headlessly (PortalVisibilityBuilder + LoadEnvCell
|
||||
fixtures) at eye=(49.15,−38.62,−3.98) ± a micron/mm grid; identify the flapping cell
|
||||
and the exact threshold (#129/#130 NDC floor-ceil class, or AP-19's PortalSideEpsilon);
|
||||
fix the root — either the threshold's correctness or the eye-noise divergence
|
||||
(retail-faithful candidates only, no hysteresis band-aids).
|
||||
|
||||
**Acceptance:** parked camera in the washed spot → vis count constant across 10k+
|
||||
frames; frame-pair pixel diffs show no region-shaped changes; the user sees no flicker.
|
||||
|
||||
---
|
||||
|
||||
## #180 — Camera-collision sweep bistable at a compressed boom → per-frame eye strobe (the #176 "stripes")
|
||||
|
||||
**Status:** 🟡 FIX SHIPPED 2026-07-06 (stateful sought-position ported per
|
||||
`CameraManager::UpdateCamera` 0x00456660 — the interpolation base is the
|
||||
CURRENT swept viewer and the sweep targets the converging sought, never the
|
||||
full-length boom; pseudocode
|
||||
`docs/research/2026-07-06-camera-sought-position-pseudocode.md`; register
|
||||
AD-37/AD-38 filed for the two pre-existing adaptations found in the reading).
|
||||
Awaiting autonomous visual verify + the user gate (with the #176 re-gate).
|
||||
**Status:** 🟡 BOTH FIXES SHIPPED 2026-07-06 + LOG-VERIFIED; user gate pends on #181
|
||||
(the residual visible flicker turned out to be render-side — see #181). Fix 1
|
||||
`48aaab81`: stateful sought-position per `CameraManager::UpdateCamera` 0x00456660
|
||||
(pseudocode `docs/research/2026-07-06-camera-sought-position-pseudocode.md`; register
|
||||
AD-37/AD-38). Fix 2 `f10fe4e9`: `BSPQuery.AdjustToPlane`/`AdjustSphereToPoly` rewritten
|
||||
per retail 0x00539bf0/0x00538170 — the ACE-inherited port was structurally dead
|
||||
(always-false), so every PathClipped camera stop reverted to a whole transition-step
|
||||
boundary; the original strobe's pulledIn 0.27↔0.53 was 1-step-vs-2-step quantization
|
||||
(pseudocode `docs/research/2026-07-06-adjust-to-plane-pseudocode.md`, replay pin
|
||||
`Issue180CorridorSweepHysteresisReplayTests`). Post-fix logs: zero eye jumps >2 cm
|
||||
across 76k turn-only sweeps pressed into walls (was 0.27–0.29 m every ~5–90 frames);
|
||||
wall stops resolve to the constant surface-contact point.
|
||||
**Severity:** HIGH (the visible flicker/stripe artifact the #176 gate keeps failing on; corridor camera constantly rides walls)
|
||||
**Filed:** 2026-07-06
|
||||
**Component:** camera / physics (NOT render — every render suspect eliminated by isolation)
|
||||
|
|
@ -250,7 +293,14 @@ over one session as CreateObject re-sends re-registered it under fresh
|
|||
entity ids — `[seam-ent]` L= showed `01D4:I100` four times) — fold into the
|
||||
A7 arc or fix with #180's gate.**
|
||||
|
||||
**Status:** 🟡 lighting fix SHIPPED + verified; residual flicker = #180 (camera strobe)
|
||||
**Status:** 🟡 lighting fix SHIPPED + verified; #180 (camera strobe) BOTH halves
|
||||
FIXED + log-verified 2026-07-06 (`48aaab81` + `f10fe4e9`); the site-A static
|
||||
light-stacking re-apply hole CLOSED (`87cddce2` — idempotent re-registration;
|
||||
whether it fully accounts for the observed `[seam-ent]` ×2→×4 growth needs a
|
||||
probe re-run, the live weenie path's guid-dedup reads sealed). **The residual
|
||||
user-visible flicker survives all of these at a parked camera and is now
|
||||
#181** — the portal-flood vis 31↔32 flap on micron eye noise driving
|
||||
visibility-scoped lights + the AABB scissor rect. Re-gate #176 after #181.
|
||||
**Severity:** MEDIUM (visible artifact along every corridor seam in the M1.5 dungeon)
|
||||
**Filed:** 2026-07-06
|
||||
**Component:** render — floor-portal polygons / portal surface state
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue