DF8106: Connection Meta Not Served
The host cannot serve the RPC connection meta for devframe "{name}" (id "{id}") at "{base}" — its DevframeHost does not implement mountConnectionMeta.
Message
The host cannot serve the RPC connection meta for devframe "{name}" (id "{id}") at "{base}" — itsDevframeHostdoes not implementmountConnectionMeta.
Cause
A mounted devframe's SPA fetches ./__connection.json relative to its base to discover the RPC endpoint, and ctx.install serves that file by calling the host's mountConnectionMeta(base). A devframe with servable clientAssets was installed on a DevframeHost that does not implement it, so the SPA connects only when it shares an origin with the hub UI (inheriting meta from the parent window); cross-origin, sandboxed, or directly-opened iframes stay disconnected.
Fix
Implement mountConnectionMeta(base) on your DevframeHost to serve __connection.json at each mounted base:
const host: DevframeHost = {
mountStatic(base, distDir) { /* serve files */ },
mountConnectionMeta(base) {
// serve `${base}__connection.json` → { backend: 'websocket', websocket: port }
},
resolveOrigin() { /* … */ },
getStorageDir(scope) { /* … */ },
}A static-snapshot host that bakes __connection.json into its served files can implement it as a no-op to acknowledge this intentionally.
Source
packages/hub/src/node/install-devframe.ts—ctx.install()emits this when a devframe with servableclientAssetsis installed on a host lackingmountConnectionMeta.