docs: fix runtime claim, stale header notes and dangling doc references

- ovrplugin_shim.h: runtime on Steam Frame is SteamVR (HOST.md), not Monado;
  drop the "Status: scaffold" line and the note that SetupLayer /
  GetLayerTexture2 await a 128-byte desc (implemented against the 108-byte
  ovrpLayerDesc); point RE-NOTES/SHIM-SCOPE at docs/research/.
- lever2-detect-skip-black-handoff.md lives in docs/research/, not analysis/.
- References to unpublished RE notes now say so instead of naming files that
  are not in the repo.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Daniel LynchandClaude Opus 5.5 committed 2026-09-22 22:44:34 -04:00
1 parent 28d610cb72
commit da7dd08640
7 files changed
+18 -17

No files matched your search

@@ -58,7 +58,7 @@ now a SAFETY NET for render-ahead's old instability (detect+hide any black inste
## Game perf RE (done this session) — one new lever, several myths busted
Static RE of the GAME binary `dump/apk_libs/lib/arm64-v8a/libUE4.so` via capstone. Full report:
`analysis/game-perf-RE.md`; memory `game-perf-RE-findings`. This REPLACES the behavioral
private RE notes (not published); memory `game-perf-RE-findings`. This REPLACES the behavioral
inferences in `game-doesnt-drive-dynamic-perf-from-feed` with code proof:
- **No game-side dynamic-FFR loop exists** — `SetTiledMultiRes{Level,Dynamic}` args are config
bytes (`SetTiledMultiResDynamic(Settings.byte[0x11d])`), never compared to GPU time/metrics. So
@@ -3,7 +3,7 @@
Continuation of `HANDOFF-2026-06-26.md` (morning). Branch `latency-perffix-copyring`.
This session built + ran **Lever 2 step 1 (instrument-only black-frame detector)** and
validated the signal is real but coarse. Detailed finding in auto-memory
`skipblack-posthitch-signal-validated`. Design: `analysis/lever2-detect-skip-black-handoff.md`.
`skipblack-posthitch-signal-validated`. Design: `docs/research/lever2-detect-skip-black-handoff.md`.
## TL;DR — the post-hitch black signal is REAL but needs a tighter gate + frame-accurate proof
Added `debug.re4vr.skipblack 1` (instrument-only): after a HITCH (dt>20ms), flag the next
+1 -1
View File
@@ -19,7 +19,7 @@ frame-drop under load**, NOT a shim bug:
- Load-gated: bridge (sparse) never blacks; house/dense geometry blacks; worse while casting.
## NEXT TASK — Lever 2: detect the bad frame + reproject
Full design in `analysis/lever2-detect-skip-black-handoff.md`. Idea: when UE hands us a
Full design in `docs/research/lever2-detect-skip-black-handoff.md`. Idea: when UE hands us a
truncated/black frame, DON'T present it — re-present the last-good eye image with the
current pose so the OpenXR compositor reprojects (timewarp) instead of showing black.
- **Bad-frame signal:** start with the **post-hitch heuristic** (the truncated frame is the
+2 -2
View File
@@ -1,6 +1,6 @@
# Render-submit race — fix design (#2)
Pairs with `render-submit-sync-RE.md` (subagent RE of UE/OVRPlugin submit timing).
Pairs with private RE notes on UE/OVRPlugin submit timing (not published).
Status: design draft; final approach (A vs B) gated on the RE findings.
## Confirmed mechanism
@@ -52,7 +52,7 @@ the submit without a hook), adds latency/stalls. Not recommended.
**D. Use an ovrp call UE makes around submit as the sync point** — only viable if the RE
finds UE invokes an OVRPlugin entry point right after the render submit. Unlikely; → RE.
## RE outcome (`render-submit-sync-RE.md`) → Option A is feasible
## RE outcome (private RE notes, not published) → Option A is feasible
- **Original = zero Vulkan sync, definitively:** libOVRPlugin imports *no* `vk*` (only
`vrapi_*`); libvrapi imports no `vk*` either. The compositor is a separate system
process; swapchains are cross-process system-owned (`vrapi_CreateTextureSwapChainCrossProcess`).