Skip to content

docs(protocol): rewrite network protocol spec to match implementation - #73

Draft
lukyrys wants to merge 9 commits into
mainfrom
docs/16-network-protocol-rewrite
Draft

docs(protocol): rewrite network protocol spec to match implementation#73
lukyrys wants to merge 9 commits into
mainfrom
docs/16-network-protocol-rewrite

Conversation

@lukyrys

@lukyrys lukyrys commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Rewrites LISH_NETWORK_PROTOCOL.md so it describes the protocol as actually implemented.

  • the old text described a Kademlia DHT, WebRTC connections and JSON command messages, none of which exist in the code
  • documents the real two-plane design: JSON control messages on per-network gossipsub topics (want, searchLishs, peer-announce) and the /lish/0.0.1 stream protocol with length-prefixed MessagePack messages (getLishs, getLish, getChunk, announceHave, searchResult)
  • chunk identity is specified as the chunk checksum from the manifest (not a positional index), including how duplicate-content chunks share one identifier
  • adds peer-visible limits and behavior: message signing, payload caps, rate limits, dedup windows, response timeouts, error codes and downloader peer penalties
  • the synchronized LISH database (with optional incremental fetch from the last known LISH ID) and network access control stay in the spec as clearly marked planned extensions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant