refactor(multipath)!: Rename PathEvent::Opened to Established#644
Merged
Conversation
The event only is emitted when the path is usable for application data, having it called Opened is confusing as that does not match multipath terminology. Maybe in the future there is a need for an event when the path is really opened, according to multipath, and then we'd have to come up with a different event name. Established also matches how we consider the state of the connection: once the handshake is *completed*, it is considered established. So I think this is a good match.
|
Documentation for this PR has been generated and is available at: https://n0-computer.github.io/noq/pr/644/docs/noq/ Last updated: 2026-05-11T07:18:12Z |
Performance Comparison Report
|
| Scenario | noq | upstream | Delta | CPU (avg/max) |
|---|---|---|---|---|
| large-single | 5363.9 Mbps | 8002.6 Mbps | -33.0% | 91.5% / 96.3% |
| medium-concurrent | 5446.3 Mbps | 7761.3 Mbps | -29.8% | 93.7% / 98.1% |
| medium-single | 4107.4 Mbps | 4738.0 Mbps | -13.3% | 94.4% / 101.0% |
| small-concurrent | 3858.4 Mbps | 5345.6 Mbps | -27.8% | 99.4% / 153.0% |
| small-single | 3575.8 Mbps | 4847.4 Mbps | -26.2% | 90.4% / 98.3% |
Netsim Benchmarks (network simulation)
| Condition | noq | upstream | Delta |
|---|---|---|---|
| ideal | 3128.6 Mbps | 4002.6 Mbps | -21.8% |
| lan | 782.4 Mbps | 810.3 Mbps | -3.4% |
| lossy | 69.8 Mbps | 69.9 Mbps | ~0% |
| wan | 83.8 Mbps | 83.8 Mbps | ~0% |
Summary
noq is 25.9% slower on average
a1b86472747c7473a36c42602d2b5d2e2894d6fb - artifacts
Raw Benchmarks (localhost)
| Scenario | noq | upstream | Delta | CPU (avg/max) |
|---|---|---|---|---|
| large-single | 5736.8 Mbps | 8019.5 Mbps | -28.5% | 97.2% / 98.7% |
| medium-concurrent | 5391.5 Mbps | 7733.4 Mbps | -30.3% | 96.6% / 98.0% |
| medium-single | 3576.0 Mbps | 4749.7 Mbps | -24.7% | 96.7% / 99.0% |
| small-concurrent | 3901.8 Mbps | 5370.1 Mbps | -27.3% | 97.7% / 99.8% |
| small-single | 3573.9 Mbps | 4721.7 Mbps | -24.3% | 96.1% / 98.4% |
Netsim Benchmarks (network simulation)
| Condition | noq | upstream | Delta |
|---|---|---|---|
| ideal | 3078.9 Mbps | 4089.3 Mbps | -24.7% |
| lan | 782.3 Mbps | 810.4 Mbps | -3.5% |
| lossy | 55.9 Mbps | 69.8 Mbps | -20.0% |
| wan | 83.8 Mbps | 83.8 Mbps | ~0% |
Summary
noq is 26.6% slower on average
matheus23
reviewed
May 11, 2026
Member
matheus23
left a comment
There was a problem hiding this comment.
Yes, this is an API breaking change in an RC release.
Weeeeeeee \o/
But it's very unlikely this is going to affect anyone. AFAIU only iroh uses this enum at the moment.
| /// Further errors might occur and they will be emitted in [`PathEvent::Abandoned`] events with this path id. | ||
| /// When the path is opened it will be reported as an [`PathEvent::Opened`]. | ||
| /// Further errors might occur and they will be emitted in [`PathEvent::Abandoned`] | ||
| /// events with this path id. When the path is opened it will be reported as an |
Member
There was a problem hiding this comment.
Suggested change
| /// events with this path id. When the path is opened it will be reported as an | |
| /// events with this path id. When the path is opened it will be reported as a |
Very much a nit.
Collaborator
Author
There was a problem hiding this comment.
Good nit, the whole thing could do with rewording so I changed it some more.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
The event only is emitted when the path is usable for application
data, having it called Opened is confusing as that does not match
multipath terminology. Maybe in the future there is a need for an
event when the path is really opened, according to multipath, and then
we'd have to come up with a different event name.
Established also matches how we consider the state of the connection:
once the handshake is completed, it is considered established. So I
think this is a good match.
Breaking Changes
PathEvent::Opened->PathEvent::EstablishedNotes & open questions
Yes, this is an API breaking change in an RC release.
Change checklist