Files
suaveplan/openspec/archive/2026-05-12-network-transport-trystero/DECISION.md
2026-05-27 23:29:53 +01:00

1.3 KiB
Raw Blame History

Decision: FOLD into network-discovery-trystero (not split)

  • Date: 2026-05-12
  • Decided by: autonomous Wave 3.3 implementation
  • Parent: network-transport-family proposal, §"Split vs. fold" for discovery-bundled transports

Outcome

@suaveplan/network-transport-trystero is NOT shipped as a separate package. Its functionality lives at @suaveplan/network-discovery-trystero/transport (subpath export of the existing discovery package).

Rationale

  1. Upstream code bundles transport + discovery as one integrated unit; the existing four-transport adapter pattern inside the discovery package already provides the multi-wire machinery.
  2. Splitting would extract working integrated code into two packages with no functional gain.
  3. Fold preserves upstream parity, shares the four-transport selection cleanly, and ships an actual usable transport in ~3× less effort.

What to import

  • Discovery: import { TrysteroDiscovery } from "@suaveplan/network-discovery-trystero"
  • Transport: import { TrysteroNodeTransport, TrysteroPlugin } from "@suaveplan/network-discovery-trystero/transport" (or /plugin)

Note: the class is named TrysteroNodeTransport (not TrysteroTransport) to avoid collision with the existing TrysteroTransport string-union type ("torrent" | "nostr" | "mqtt" | "ipfs") in the discovery package.