[] ErrorBoundary: late-delivered fallback leaves the errored content's serialized state live
Which component is affected?
Qwik Runtime
Describe the bug
When a boundary sits outside a <Suspense> whose child rejects after the root has streamed (out-of-order, the default under the suspense flag), the fallback is delivered late through $emitFallback$. The rethrow-into-segment exit skips markErrorBoundaryContentInert, and by that point the root has already emitted its state and vnode-data — so the inert cut cannot reach the wire. The errored content resumes with live effect subscriptions: a bound attribute inside the hidden content keeps tracking, and a signal write updates the dead DOM (a bound img src fires a real network request for a torn-down subtree).
The DOM half is handled (the late path now registers a qErr swap that hides the content host and strips its q-d:*/q-w:* handlers). The state half needs a way to retract already-emitted rows, which the vnode-data patch channel cannot express today: patches only add or replace rows that carry data; an INERT-gated row emits as separator-only and leaves the earlier live row standing.
Reproduction
Pinned (skipped) in packages/qwik/src/core/tests/error-boundary.spec.tsx, describe "ErrorBoundary late-delivered fallback": "marks the errored content inert: a bound attribute stops tracking after resume".
System Info
Qwik v2, build/v2 lineage (PR #8745 branch), experimental errorBoundary + suspense flags
Additional Information
Same family as the retained-element-effects residue: the in-order path clears effects before emission; the late path has no emission left to gate.
Source: QwikDev/qwik