Rift Protocol: versioned, framed on-the-wire messages for P2P voice + text.
A Rift frame is:
- magic: 4 bytes ("RFT1")
- version: u8
- frame_len: u32 (length of the encoded frame body)
- frame body: bincode-encoded
(RiftFrameHeader, RiftPayload)
Versioning: each peer advertises supported protocol versions. The highest common version is selected for communication.
Streams: frames declare a StreamKind (Control / Text / Voice / Custom)
to allow multiplexing and future extensions.