1.1 KiB
1.1 KiB
ECP-0013: stream catalog gossip for discovery
Status: Draft
Problem
We need a decentralized way to discover live streams and their MoQ endpoints without a central registry.
Constraints
- Must work over iroh transports (QUIC, relays).
- Should be encrypted at the transport layer and signed by endpoint identities.
- Lightweight enough to broadcast frequently.
Decision
- Introduce a
StreamCatalogEntrystructure that pairs aStreamDescriptorwith MoQ transport metadata and optional encryption parameters. - Publish catalog entries over
iroh-gossipon a well-known topic derived fromevery.channel/catalog/v1. ec-nodecan optionally announce entries when publishing a stream.
Alternatives considered
- Centralized HTTP registry: rejected due to resilience and governance risks.
- Static peer lists only: rejected due to poor discoverability.
Rollout / teardown
- Add catalog types to
ec-coreand gossip helpers toec-iroh. - Add CLI flags to
ec-nodeto announce catalog entries. - Defer full catalog sync/merge semantics until initial interoperability is validated.