Implement IrohTransport and IrohAcceptor (feature-gated iroh)

Add iroh QUIC P2P transport using tokio::io::join for stream duplexing
per ADR-003. Default relay is n0's https://relay.iroh.network/ (ADR-009).
Proxy URL passed to Endpoint::builder (ADR-010). Integration test marked
#[ignore] for CI since it requires iroh relay connectivity.
This commit is contained in:
2026-06-02 10:29:40 +00:00
parent b4f4f2ed8c
commit c3f5f3f504
4 changed files with 216 additions and 3 deletions

View File

@@ -9,7 +9,7 @@ name = "wraith_core"
[features]
default = []
tls = ["dep:tokio-rustls", "dep:rustls"]
iroh = ["dep:iroh"]
iroh = ["dep:iroh", "dep:url"]
acme = ["dep:rustls-acme", "tls"]
testutil = []
transport-traits = []
@@ -25,8 +25,10 @@ tokio-rustls = { version = "0.26", optional = true }
rustls = { version = "0.23", optional = true }
rustls-acme = { version = "0.12", optional = true }
iroh = { version = "0.34", optional = true }
url = { version = "2", optional = true }
async-trait = "0.1"
[dev-dependencies]
wraith-core = { path = ".", features = ["testutil"] }
tempfile = "3"
wraith-core = { path = ".", features = ["testutil", "iroh"] }
tempfile = "3"
rand = "0.8"