cultmesh-rs: single and batch publish complete on the result frame, not the transport ack #57
Loading…
Reference in a new issue
No description provided.
Delete branch "libby/rs-client-ack-finding"
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?
cultmesh-rs:
publish_cultnet_message_to_rudp_catalogandpublish_cultnet_messages_to_rudp_catalogare now one loop. A put completes on the catalog's result frame: acultnet.error.v0fails the call whether it arrives before the ack, after it, or inside the newresult_windowoption (default 500 ms); a success frame ends the wait early. A catalog that admits a put sends no success frame, so the window is the interim bound (no server code). The batch no longer finishes onflush_reliablealone, so a refusal cannot be hidden. A failed batch does not say which message was refused (answers carry no message id).Doc line 'fire-and-forget: an ack or a return is not admission; read the result frame' on
send,send_reliable,flush_reliable(cultnet-rs rudp.rs) and the tcp_framedsend.Tests: ack-then-refusal, refusal-then-ack (single and batch), success frame completes without waiting out a 30 s window. Mutants killed: window check removed, success counting removed, refusal branch disabled.
🤖 Generated with Claude Code
WIP: FINDING cultmesh-rs: publish completes on the ack when the refusal follows it; batch publish is ack-onlyto cultmesh-rs: single and batch publish complete on the result frame, not the transport ack