From 4df19146ff8ac51804c22bad159ee9e9b9a03199 Mon Sep 17 00:00:00 2001 From: Erik Date: Sun, 10 May 2026 19:49:13 +0200 Subject: [PATCH] docs(render #53): clarify DebugCrossCheck's wiring status MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Code review of f16604b flagged that DebugCrossCheck's XML doc claimed "called once per static-entity cache hit per frame" — overstated. The method is currently exercised by unit tests only; the dispatcher's cache-hit branch fires a simpler predicate assert (!isAnimated) at production hit time, not the full live-state cross-check. Wiring the full cross-check is the spec section 6.5 stretch goal, kept open as a follow-up. Doc-only change. No behavior change. 1708 / 8 baseline preserved. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/AcDream.App/Rendering/Wb/EntityClassificationCache.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/AcDream.App/Rendering/Wb/EntityClassificationCache.cs b/src/AcDream.App/Rendering/Wb/EntityClassificationCache.cs index 0afaf98..f50d298 100644 --- a/src/AcDream.App/Rendering/Wb/EntityClassificationCache.cs +++ b/src/AcDream.App/Rendering/Wb/EntityClassificationCache.cs @@ -113,8 +113,12 @@ internal sealed class EntityClassificationCache /// /// /// - /// Zero cost in Release. In DEBUG, called once per static-entity cache - /// hit per frame — adds modest overhead. Acceptable for dev runs. + /// As of Phase 4 (commit f16604b) this method is exercised by unit tests + /// only; the dispatcher's cache-hit branch fires a simpler predicate assert + /// (!isAnimated) at production hit time. Wiring the full live-state + /// cross-check into the per-entity branch is the spec section 6.5 stretch + /// goal and remains open as a follow-up. Zero cost in Release; the method + /// stays here so the regression-class guard is locked behind tests. /// /// public void DebugCrossCheck(uint entityId, IReadOnlyList liveBatches)