-
fix(producer): preserve window.__hf set by page scripts
发布于
2026-04-19 21:20:05 +00:00 The render bridge previously overwrote
window.__hfwholesale at end-of-body,
clobbering anything written during user<script>execution. Libraries such as
@hyperframes/shader-transitionspopulatewindow.__hf.transitionsinside
theirinit()call, so the engine never saw a transition map and HDR
compositing fell back to plain DOM layers.Two changes restore the contract:
- Inject HF_EARLY_STUB at the very start of
<head>sowindow.__hfexists
before any other script runs. User libraries can now safely write to it
during initialisation. - HF_BRIDGE_SCRIPT now patches the existing
__hfobject (definingduration
as a getter and assigningseek) instead of replacing it, preserving any
fields the page already populated.
Adds a regression test that simulates the real injection order — early stub,
authored page script writing__hf.transitions, bridge script — and asserts
bothtransitionsand the bridge-installedseek/durationare present
afterwards.Made-with: Cursor
下载附件
- Inject HF_EARLY_STUB at the very start of