handoff(forge): engine-side oracle results on a967d12b — replay+record 10/10 (VUID-00050 finding), DIC d3d12 22/0 validated, cull_pool d3d12 4524/4524 validated; Vulkan SDK + D3D12 debug layer installed on Forge

This commit is contained in:
ozan committed 2026-10-19 01:40:43 +01:00
1 parent 4485763114
commit 22943169cc
1 file changed
+29
@@ -60,3 +60,32 @@ at the same spot.
Default flips on (`rendering/rendering_device/parallel_draw_replay/enabled=true` in the game's `project.godot`,
then publish + pin) only if: oracle clean, soak clean, and frame time / `end_frame` drop at all 3 poses.
## 2026-10-19 Engine-side test results on Forge (ZCode) — build a967d12bf, NOT published (test-only per this handoff)
Tooling note: Vulkan SDK + Khronos validation layer and the D3D12 debug layer (Graphics Tools) are now
INSTALLED on Forge (admin install, C:\VulkanSDK) — the "--gpu-validation owed" notes in the manifest are
resolved from here on.
1. parallel_draw_replay oracle, vulkan, --gpu-validation (RTX 5080): **ORACLE: 10 passed, 0 failed, exit 0**
(replay 64x8/8x32/120x2/16x3, record 96x8/8x32/200x2, record+replay 16x5, inline-again — all pixel-identical,
real chunk splits up to 160 chunks).
**VUID FINDING (not zero-VUID as this handoff expected):** 10x VUID-vkBeginCommandBuffer-commandBuffer-00050
("commandBuffer must be in the initial state … pool must have VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT").
They fire in the FIRST parallel state (after the inline reference, before its PASS) and hit the duplicate limit.
Control: 120 frames of the same project, validation on, feature OFF → 0 VUIDs. So the parallel path re-begins
secondary command buffers from pools without the RESET bit — spec-UB that the current NVIDIA driver tolerates
(and MoltenVK runs never flagged). Benign today, but a candidate fix is the pool flag or explicit
vkResetCommandBuffer per chunk reuse. Pixel identity is unaffected.
2. draw_indirect_count oracle, d3d12, debug layer ON (run.sh): **22 passed, 0 failed, exit 0**, with the expected
`ORACLE SKIP base-instance cases: D3D12 shaders see base instance 0` line and zero D3D12 ERROR lines — this now
matches the wiki Windows checklist exactly (the earlier 22/2 was the no-debug-layer run where the cases ran
instead of skipping). Old "owed" item closed.
3. multimesh_cull_pool oracle, d3d12, debug layer ON: **4524 passed, 0 failed, exit 0**, zero D3D12 ERROR lines —
full parity with Mac Metal (4524/4524). The "base-instance gap may bite pooled draws" concern did NOT
materialize; per the G2 handoff this un-gates making pool the default. Old "owed" item closed.
Still owed on Windows: the in-game A/Bs of this handoff (replay/record 4-state + occlusion on/off at the spawn
pose, render_thread_profile.py tables), the 10-minute replay soak + shadow-edge eye check, the tests=yes unit
suites (CrashReport/FreezeDetector/FreezeWatchdog/AgentLog/GpuCullArena/StaticShadow), and the 8-step crash
checklist. Publishing windows-x64 a967d12b + the default flip remain Ozan's call after the VUID finding.