Project Documentation
- 需求理解: current product scope, priorities, constraints, and acceptance criteria.
- 方案设计: accepted, code-ready design for the first measurable WebRTC proof of concept.
- Project memory: durable decisions and unresolved questions to read at the start of future work.
- Current status: bounded snapshot of the current phase, completed baseline, next step, and blockers.
- Deployment: minimal Node, HTTPS/WSS, coturn, firewall, secret, optional TURN/TLS, and network-verification procedure.
- Maintenance guide: Git workflow, context hygiene, document lifecycle, research policy, and automation.
- P2P WebRTC research: evidence, bandwidth model, browser constraints, reference implementations, and feasibility assessment.
- Peer-assisted media research: browser shared-encode limits, standard relay re-encoding, deterministic sticky topology, runtime relay-capacity extension, and abandon gates.
- Low-server-cost media routes: traffic accounting, route screening, conditional native encoded-RTP relay, and automatic use of enabled SFU capacity as the final fallback.
- Advanced peer distribution: multi-tree/SVC, encoded-object relay, native RTP forwarding, FEC/network-coding, MoQ, and measurable go/no-go gates.
- Native shared-encode sender: bounded libwebrtc encoder-proxy risk spike, Draft PR #16's transport-only Pion fanout oracle, and hard failure gates.
- Realtime quality adaptation: browser degradation policy, live profile changes, offline-encoding boundaries, and measurement gates.
- Agent context governance research: official Codex, Claude Code, Hermes Agent, and GitHub practices adopted by this repository.
- ADR-0001: accepted P2P-first media topology and its consequences.
- ADR-0002: optional SQLite persistence, protected sequential room IDs, and room lifecycle.
- ADR-0004: proposed, experiment-only standard-WebRTC peer-assisted spike with hard fanout and failure gates.
- ADR-0005: proposed, default-off automatic P2P/peer/SFU preparation, commit, failback, and rollback with a hard host-edge budget.
Documentation and project memory are part of the product source of truth. Update them in the same change that alters the corresponding requirement or architecture.