Skip to content

refactor(multipath)!: Rename PathEvent::Opened to Established#644

Merged
flub merged 2 commits intomainfrom
flub/path-established-event
May 11, 2026
Merged

refactor(multipath)!: Rename PathEvent::Opened to Established#644
flub merged 2 commits intomainfrom
flub/path-established-event

Conversation

@flub
Copy link
Copy Markdown
Collaborator

@flub flub commented May 7, 2026

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::Established

Notes & open questions

Yes, this is an API breaking change in an RC release.

Change checklist

  • Self-review.
  • Documentation updates following the style guide, if relevant.
  • All breaking changes documented.

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.
@flub flub requested a review from a team May 7, 2026 11:49
@flub flub changed the title refactor(multipath): Rename PathEvent::Opened to Established refactor(multipath)!: Rename PathEvent::Opened to Established May 7, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

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

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

Performance Comparison Report

3c3eac9e4e1b22867ddab1d5cf4f672466d0c053 - artifacts

Raw Benchmarks (localhost)

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

@n0bot n0bot Bot added this to iroh May 7, 2026
@github-project-automation github-project-automation Bot moved this to 🚑 Needs Triage in iroh May 7, 2026
Copy link
Copy Markdown
Member

@matheus23 matheus23 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread noq-proto/src/connection/mod.rs Outdated
/// 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
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good nit, the whole thing could do with rewording so I changed it some more.

Copy link
Copy Markdown
Member

@matheus23 matheus23 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Meant to approve.

@flub flub enabled auto-merge May 11, 2026 07:18
@flub flub added this pull request to the merge queue May 11, 2026
Merged via the queue into main with commit 6a114f5 May 11, 2026
37 of 38 checks passed
@flub flub deleted the flub/path-established-event branch May 11, 2026 07:34
@github-project-automation github-project-automation Bot moved this from 🚑 Needs Triage to ✅ Done in iroh May 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

2 participants