- UniFFI is the native FFI surface; cfg_attr all of it (setup_scaffolding, Record
derives, export/callback_interface/constructor) to cfg(not(wasm32)). The wasm
binding layer will be wasm-bindgen instead.
- rendezvous_register: reqwest Builder::timeout isn't on the wasm fetch backend —
cfg it (browser bounds the request itself).
- iroh-gossip on wasm needs default-features=false + features=["net"] for the net
module (Gossip/GossipSender/api).
wasm32 build now down to the two genuinely structural blockers: the tokio
multi-thread runtime (new_multi_thread → spawn_local) and the iroh wasm endpoint
(presets::N0 is native-only — pulls ring/portmapper). Native unaffected (verified).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>