Skip to content

Conversation

@motiz88
Copy link
Contributor

@motiz88 motiz88 commented Jan 19, 2026

Summary:
Adds multi-session support to the Node side of the inspector-proxy protocol implementation. The protocol now has an explicit sessionId property in all relevant messages.

Multi-session support is fully backwards compatible:

  • An app that does not report itself as multi-session capable will get the old proxy behaviour.
  • If the enableStandaloneFuseboxShell experiment flag is disabled by the integrator/framework, we automatically disable multi-session support, too. This is to guarantee that we continue to have at most one active RNDT window/tab open per app. (The standalone shell guarantees this independently of the proxy, while the old browser-based flow requires the proxy to keep enforcing the single-session UX.)

Changelog: [General][Added] Support multiple CDP connections to one React Native Host (diff 2 of 2)

Differential Revision: D90174643

motiz88 and others added 4 commits January 19, 2026 11:32
Summary:
Pull Request resolved: facebook#55055

TSIA.

Changelog: [Internal]

Differential Revision: D90174644

Reviewed By: robhogan
Summary:
Pull Request resolved: facebook#55056

Refactors InspectorPackagerConnectionTest.cpp to extract the test fixtures into a separate header file. This allows us to split `InspectorPackagerConnectionTest.cpp` into multiple files as we add more test cases, which is particularly helpful for LLMs writing tests.

Changelog: [Internal]

Differential Revision: D90174645

Reviewed By: robhogan
Summary:
Implements multi-debugger support in the C++ InspectorPackagerConnection class. This allows multiple debugger sessions to connect to the same page simultaneously via session IDs.

Key changes:
- Change session storage from pageId -> Session to pageId -> (sessionId -> Session) nested map
- Parse and include sessionId in connect/disconnect/wrappedEvent message handling
- Report supportsMultipleDebuggers: true capability in page listings
- Maintain backwards compatibility with legacy proxies that don't send sessionId
- Add new test file for multi-session scenarios
- Update protocol documentation for multi-debugger support

Differential Revision: D90174642
Summary:
Adds multi-session support to the Node side of the inspector-proxy protocol implementation. The protocol now has an explicit `sessionId` property in all relevant messages.

Multi-session support is fully backwards compatible:

* An app that does not report itself as multi-session capable will get the old proxy behaviour.
* If the `enableStandaloneFuseboxShell` experiment flag is disabled by the integrator/framework, we automatically disable multi-session support, too. This is to guarantee that we continue to have at most one active RNDT window/tab open per app. (The standalone shell guarantees this independently of the proxy, while the old browser-based flow requires the proxy to keep enforcing the single-session UX.)

Changelog: [General][Added] Support multiple CDP connections to one React Native Host (diff 2 of 2)

Differential Revision: D90174643
@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jan 19, 2026
@meta-codesync
Copy link

meta-codesync bot commented Jan 19, 2026

@motiz88 has exported this pull request. If you are a Meta employee, you can view the originating Diff in D90174643.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants