This directory contains high-level design documents from early 2026 discussions. Some are being actively tracked in the roadmap; others will be reworked as the project evolves. They represent thinking-in-progress rather than finalized specifications.
Comprehensive YAML-based configuration design with hierarchical scope (global →
listeners → services → tracks), a runtime API for hot reload, parameter
lifecycle classification (static / reload:newconn / reload:newsub /
reload:immediate), and validation tooling. Current format:
docs/config.md.
Config reload via SIGHUP and a runtime management API for dynamic updates
without restarts. Graceful binary restart uses eBPF-based connection steering to
hand off live connections.
Hierarchical cache composition abstraction allowing caches to delegate fetches up a chain (memory → disk → remote → origin). Open questions on filter support and coroutine memory trade-offs.
Provider abstraction (RelayProvider interface) for multi-provider routing with
local fallback and remote fan-out semantics. Covers concrete implementations
(UpstreamProvider, MeshProvider), bidirectional session handling, and a
migration path for namespace/track resolution across a relay fleet.
Multi-publisher deduplication design: deduplicates overlapping object data from competing publishers using a shared cache, with per-publisher metrics and seamless failover. Open questions remain around streaming objects and thread safety.
Seven-phase plan to wrap moxygen's Publisher/Subscriber interfaces in a
C++20 standard library API with no folly exposure. Targets API modernization;
all phases are specified but not yet implemented.