Skip to content

Conversation

@nerodono
Copy link
Contributor

@nerodono nerodono commented Dec 8, 2025

Currently elfo-network screws order of events when destination mailbox is full and responses are involved:

ctx.send_to(actor_b, First).await.unwrap();
ctx.respond(token, Response);

The response could arrive before First message gets into target's mailbox.
While it's mostly unnoticeable and even correct (?, probably we need to specify explicitly guarantees made by elfo), this can make various pattern hard-to-impossible to implement.


Additionally, this PR introduces UNBOUNDED flag to NetworkEnvelope and makes use of it to send envelopes unboundedly, previous implementation always sent boundedly. This change is backward and forward compatible.

@nerodono nerodono requested a review from loyd December 8, 2025 10:46
@nerodono nerodono force-pushed the feat/strict-event-order branch 6 times, most recently from acf669e to 170da04 Compare December 9, 2025 01:10
@nerodono nerodono force-pushed the feat/strict-event-order branch from 170da04 to 348f364 Compare December 9, 2025 15:02
@codecov
Copy link

codecov bot commented Dec 9, 2025

Codecov Report

❌ Patch coverage is 72.15190% with 44 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
elfo-network/src/worker/mod.rs 74.19% 17 Missing and 7 partials ⚠️
elfo-network/src/worker/flows_rx.rs 65.51% 20 Missing ⚠️

📢 Thoughts on this report? Let us know!

@nerodono nerodono marked this pull request as ready for review December 9, 2025 16:58
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.

2 participants