diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 3d28a13..04501b3 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -280,6 +280,15 @@ The hard networking kernel exists. To become a general substrate: "engine + `IrohTransport` only, `default-features=false`, `wasm32`." Cost: browser peers lean on the relay (no P2P offload) — trivial for clipboard, relay-carried for big files. + - **Browser-direct is a watch-item, not a dependency.** Relay-only is the + floor today. The *credible* path to browser P2P offload is **WebTransport + + `serverCertificateHashes`** (n0's preferred route — they deliberately + avoid WebRTC, whose ICE/STUN/TURN bundle is the stateful/expensive model + iroh exists to escape); it's roadmap, no timeline. **WebRTC** exists only as + a community alpha (`iroh-webrtc-transport`, third-party, on the experimental + `unstable-custom-transports` API) — long-shot. Both would arrive behind the + same `endpoint.connect()`, so it's zero-effort upside we wait for. Track + whether n0 ships WebTransport browser-direct from core; don't design for it. 4. **Capabilities / permissions (target).** Multi-user needs object-capabilities (UCAN), not ACLs. 5. **Persistence / offline-first (target).** Local store + sync-on-reconnect