0416b20a46
Root cause: WKWebView does not invoke WKURLSchemeHandler for iframe loads when the iframe uses a different scheme than the parent page. The app uses capacitor:// (iosScheme: 'https' is normalised to capacitor:// by Capacitor since https is a built-in scheme), but sandbox iframes were using sbx:// — a cross-scheme load that WebKit silently ignores. Fix: Sandbox iframes now use capacitor://<id>.sandbox.local/path (same scheme as the parent app). Capacitor's WebViewAssetHandler is the sole handler for the capacitor:// scheme, so we swizzle its webView(_:start:) and webView(_:stop:) methods at runtime to intercept requests whose hostname ends with .sandbox.local. These are forwarded to the JS layer for resolution. All other requests pass through to the original Capacitor implementation. This removes the standalone IframeSandboxSchemeHandler and the sbx scheme registration in DittoBridgeViewController. The swizzle is installed in SandboxPlugin.load(), keeping the architecture simple: one plugin, one request handler, no separate scheme. Also cleans up diagnostic logging from the investigation, retaining only the diagnose() plugin method for future debugging.