cultnet-ts: changelog and README for the many-peer RUDP server

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-10-31 01:32:01 +01:00
commit ae0b9e234f
2 changed files with 5 additions and 1 deletions

View file

@ -5,6 +5,10 @@ All notable changes to `cultnet-ts` are recorded here, following
## Unreleased
### Added
- `CultNetRudpSocketTransportServer`: one UDP socket serving many peers, each remote address and port with its own reliable session (`peerConnected`, `frame`, `peerDisconnected` events; `send(peer, ...)` answers on the peer a frame came from). A second client no longer replaces the first; idle peers are reaped after `peerTimeoutMs` (default 60 s) and Connects beyond `maxPeers` (default 256) are dropped. Matches the Rust `CultNetRudpServerHub` and C# `CultNetRudpSocketTransportServer`; the wire format is unchanged. `CultNetRudpSocketTransportConnection` in `server` mode still serves exactly one peer.
### Breaking
- `CultMeshCdnChunkRef` carries `id` (slot 4), the reference's element id. `encodeManifest` writes five-slot chunk references and `packContent` sets the decimal offset as the id, as the reference does; a manifest written before ids reads `""` and is rewritten with the slot. Content vectors regenerated from the reference.

View file

@ -21,7 +21,7 @@ The library currently includes:
- `CultCacheTS` replication helpers for document put/delete/snapshot flows
- schema discovery catalog messages and a registry for asking what contracts a
peer can actually exchange safely
- RUDP socket transport, reconnect policy helpers, and
- RUDP socket transport (`CultNetRudpSocketTransportServer` serves many peers from one socket), reconnect policy helpers, and
`CultNetRudpReconnectLoop` for controller-owned retry scheduling around a
caller-owned socket factory
- generated TypeScript contracts and runtime verifiers from canonical JSON