SES And ShadowRealm Runtime
Experimental status
Section titled “Experimental status”SES/ShadowRealm integration is experimental.
@omnicajs/vue-remote can be adapted to this model, but full support is not guaranteed and depends on host runtime capabilities.
Why consider it
Section titled “Why consider it”- capability-oriented sandboxing in one process;
- tighter authority boundaries than plain in-memory integration;
- potential fit for high-control extension runtimes.
Reality check
Section titled “Reality check”- Runtime availability varies by platform and tooling.
- Third-party packages may require adaptation.
- You still need a robust bridge for channel messages and lifecycle.
Conceptual integration pattern
Section titled “Conceptual integration pattern”// Pseudocode: adapter shape depends on SES/ShadowRealm implementation.
const realm = createRealm()
const bridge = createRealmBridge(realm) // implements MessageEndpoint-like behaviorconst endpoint = createEndpoint<RemoteApi>(bridge)
await endpoint.call.run(receiver.receive, hostBridge)Guidance
Section titled “Guidance”- Treat this as R&D or controlled pilot capability.
- Maintain strict capability allowlists for realm-exposed APIs.
- Preserve standard
run/releaseand cleanup semantics. - Keep a fallback transport for production rollout.