You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(devframe): clean up and deduplicate relay handshakes
Close unclaimed grant ports and end their opposite endpoints. Retry pending document handshakes with distinct identities so delayed grants cannot replace newer connections. Cover cancellation, delayed grants, late scripts, and direct in-page connections.
Copy file name to clipboardExpand all lines: docs/content/8.references/5.browser-api.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -71,7 +71,7 @@ The browser-only endpoint methods of the [in-page channel](/guide/in-page-channe
71
71
|`transport.postMessage(data)`| Send a relay envelope to the paired relay. Preserve message order and structured-cloneable payloads. |
72
72
|`transport.onMessage(handler)`| Subscribe to incoming relay envelopes and return an unsubscribe function. |
73
73
74
-
The returned function removes listeners and closes relayed ports. The hub UI provider binds the transport to one inspected document and one hub UI provider document, validates the transport's sender, and disposes both relays on navigation or disconnection. The panel relay accepts same-origin descendant-frame handshakes; the page relay grants connections through the existing page script. Channel calls, shared state, and heartbeat messages retain the existing protocol.
74
+
The returned function removes listeners and closes relayed ports. The hub UI provider binds the transport to one inspected document and one hub UI provider document, validates the transport's sender, and disposes both relays on navigation or disconnection. The panel relay accepts same-origin descendant-frame handshakes; the page relay grants connections through the existing page script. Channel calls, shared state, and heartbeat messages retain the existing protocol. Pending document handshakes retry every second. Each attempt uses an opaque relay-owned panel identity; superseded grants are closed, while the original identity is restored in the grant delivered to the panel.
0 commit comments