cultmesh-ts: end a RUDP session after 8 consecutive unreadable frames or authority-refused deletes #44
Loading…
Reference in a new issue
No description provided.
Delete branch "libby/ts-refused-frames-cap"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Heimdall's parity ruling (2026-11-08), TS side; the Rust side is #43 (
4828c416).createRudpDocumentServeralready answers an unreadable frame and keeps the session; it had no cap. Adds the exportedCULTMESH_RUDP_DOCUMENT_SERVER_MAX_CONSECUTIVE_REFUSED_FRAMES = 8: the 8th consecutive undecodable frame, or 8th consecutive delete the write authority refuses, is answered and then ends that peer's session (goodbye as for a refused packet). A decoded frame resets the undecodable run; a decoded frame that is not a refused delete (a granted delete, a put, ...) resets the delete run.Touches the write-authority path (
writeRefusedcallers count its outcome); the authority's decision itself and the refusals sent are unchanged. Left unmerged for Heimdall.Tests: two new tests (7 answered, reset, 7 more, 8th answered then session ended; same for deletes) and one pinning the constant at 8. Six hand mutants fail them (cap 7, cap 9, unreadable never resets, non-delete never resets the delete run, granted delete never resets, delete never counts). cultmesh-ts suite 183 pass.
🤖 Generated with Claude Code