docs: record wasm groundwork status + the 4 structural items remaining
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+20
-3
@@ -468,9 +468,26 @@ multi-modal payloads (text inline, audio/photo/data via `iroh-blobs`). Receiving
|
|||||||
- [ ] Rotatable rooms/keys/identities + stable-handle directory indirection.
|
- [ ] Rotatable rooms/keys/identities + stable-handle directory indirection.
|
||||||
- [ ] Private discovery (OPRF/PSI lookup; ZKP ownership proofs).
|
- [ ] Private discovery (OPRF/PSI lookup; ZKP ownership proofs).
|
||||||
- [ ] Capability model (UCAN); offline mailbox.
|
- [ ] Capability model (UCAN); offline mailbox.
|
||||||
- [ ] **Web client = `tethercore` on `wasm32`** — relay-only iroh peer, same
|
- [~] **Web client = `tethercore` on `wasm32`** — relay-only iroh peer, same
|
||||||
core, no server bridge. Gated on feature-gating the transports (iroh-only
|
core, no server bridge. (Correction: it's more *project* than *build
|
||||||
build) + the IrohTransport (M4). A build target, not a project.
|
target* — see below.)
|
||||||
|
- [x] **Groundwork done** — deps are target-split: native-only transports
|
||||||
|
(tokio-net/mdns/webrtc) + UniFFI + native reqwest under
|
||||||
|
`cfg(not(wasm32))`; wasm gets minimal tokio + fetch-reqwest +
|
||||||
|
wasm-bindgen-futures + iroh (`default-features=false`). SSE/RTC/LAN
|
||||||
|
gated to native; getrandom wasm rng wired. `cargo build --target
|
||||||
|
wasm32-unknown-unknown --features iroh-transport` now reaches
|
||||||
|
tethercore's own code: **15 errors, 4 structural clusters.** Native
|
||||||
|
unaffected.
|
||||||
|
- [ ] **Decouple UniFFI** (10 errs) — the FFI macros are on every public
|
||||||
|
item; gate them out for wasm and add a `wasm-bindgen` surface instead.
|
||||||
|
- [ ] **iroh wasm feature set** (2 errs) — `default-features=false` strips
|
||||||
|
`presets::N0` / `iroh_gossip::net`; find the right wasm features.
|
||||||
|
- [ ] **Runtime** (1 err) — the engine builds a tokio multi-thread runtime;
|
||||||
|
wasm needs `spawn_local` + `?Send` futures (the real refactor — the
|
||||||
|
`Transport`/spawn signatures differ by target).
|
||||||
|
- [ ] **reqwest `.timeout()`** (1 err) — not on the fetch backend; cfg it out.
|
||||||
|
- [ ] Then `wasm-bindgen` + a JS shim; relay-only in-browser (no holepunch).
|
||||||
- [ ] **Retire the Go server** once IrohTransport wins — replace with a
|
- [ ] **Retire the Go server** once IrohTransport wins — replace with a
|
||||||
self-hosted iroh-relay (supernode #1) + a tiny gossip-bootstrap rendezvous.
|
self-hosted iroh-relay (supernode #1) + a tiny gossip-bootstrap rendezvous.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user