Skip to content

v0.9.0-rc.22

Choose a tag to compare

@github-actions github-actions released this 25 May 22:03
· 73 commits to main since this release
e0e1884

ADR-062 Phase 2 follow-up — adds two re-exports rc.21's Phase 2 surface accidentally missed: peat_mesh::network::Connection (= iroh::endpoint::Connection) consumed by peat-protocol's formation-handshake, and peat_mesh::network::DiscoveryEvent (= iroh_mdns_address_lookup::DiscoveryEvent) consumed by peat-protocol's mDNS event handler. Unblocks the peat consumer-side PR (peat#926) to simultaneously satisfy the SKILL.md transport-agnosticism gate AND drop iroh + iroh-mdns-address-lookup from peat-protocol's direct deps.

No transport semantics or wire-shape change. Pure additive re-export.

Added — ADR-062 Phase 2 follow-up re-exports (defenseunicorns/peat#926)

  • peat_mesh::network::Connection — re-export of iroh::endpoint::Connection. Consumed by peat-protocol/src/network/formation_handshake.rs, whose protocol-level handshake (Ed25519 challenge, formation-key verification) runs against the raw iroh::Connection returned by IrohTransport::connect_* per ADR-062 §"What peat-protocol still owns". The original rc.21 surface only re-exported EndpointId; this follow-up adds the Connection type the formation-handshake consumer requires.
  • peat_mesh::network::DiscoveryEvent — re-export of iroh_mdns_address_lookup::DiscoveryEvent. Consumed by peat-protocol/src/sync/automerge.rs's mDNS event handler. Adding it lets the peat consumer-side PR drop iroh-mdns-address-lookup from peat-protocol's direct deps (ADR-062 acceptance gate #2).

These two re-exports were accidentally missed from rc.21's Phase 2 surface. Without them, the peat consumer-side PR (peat#926) can't simultaneously satisfy the SKILL.md transport-agnosticism gate (no use iroh:: lines outside the re-export shim) AND drop iroh + iroh-mdns-address-lookup from peat-protocol's direct deps. Either we keep them as direct deps (violates ADR-062) or we ship a follow-up surface release (this one).

No transport semantics or wire-shape change. Pure additive re-export.

A network::reexport_pin::_typecheck compile-only test pins the upstream paths, so a future iroh / iroh-mdns-address-lookup rename surfaces at peat-mesh's CI rather than at downstream peat-protocol's build.

Deferred (tracked separately)

  • peat-mesh#167 — narrow the Connection re-export to a peat-mesh-owned trait surface. Re-exporting the full iroh::endpoint::Connection exposes every Connection method to downstream consumers; the transport-agnosticism gate is currently enforced only at the import path, not the API shape. Reviewer of #166 explicitly framed as out-of-scope for this follow-up; tracking the design conversation in #167.