Skip to content

node: Extend flow cancel by configuring allow-list of chain ID pairs ("corridors") #4229

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 16 commits into from
Apr 30, 2025

Conversation

johnsaigle
Copy link
Contributor

@johnsaigle johnsaigle commented Jan 21, 2025

  • Add a concept of "corridors" which consist of a pair of chains
  • Add field in the Governer that enables flow cancel only for corridors
    which are explicitly enabled
  • Set the Eth-Sui corridor as the only flow cancel-enabled pair. Sui is the
    only chain with frequent governor congestion so it is the only one
    that really needs the Flow Cancel capabilities. Ethereum is the main
    chain that Sui is interacting with in terms of volume moving in and
    out of Sui.
  • Refactor calling sites for flow cancel transfer functions so that all
    checks are done in one place. (Should help prevent bugs where only one
    calling site is updated.)

@johnsaigle johnsaigle changed the title node: Extend flow cancel by configuring allow-liss of chain ID pairs ("pipes") node: Extend flow cancel by configuring allow-list of chain ID pairs ("pipes") Jan 21, 2025
@johnsaigle johnsaigle marked this pull request as ready for review January 22, 2025 18:46
Copy link
Contributor

@bruce-riley bruce-riley left a comment

Choose a reason for hiding this comment

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

Looks good, just a couple of comments.

djb15
djb15 previously approved these changes Mar 7, 2025
Copy link
Collaborator

@djb15 djb15 left a comment

Choose a reason for hiding this comment

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

Nit, looks good!

djb15
djb15 previously approved these changes Mar 20, 2025
@johnsaigle johnsaigle changed the title node: Extend flow cancel by configuring allow-list of chain ID pairs ("pipes") node: Extend flow cancel by configuring allow-list of chain ID pairs ("corridors") Apr 11, 2025
@johnsaigle johnsaigle requested review from bruce-riley and djb15 April 11, 2025 17:40
@johnsaigle johnsaigle force-pushed the flow-cancel-pipes branch 3 times, most recently from a3052ec to 3ac0f88 Compare April 16, 2025 14:35
- Add a concept of "pipes" which consist of a pair of chains
- Add field in the Governer that enables flow cancel only for "pipes"
  which are explicitly enabled
- Set the Eth-Sui pipe as the only flow cancel-enabled pair. Sui is the
  only chain with frequent governor congestion so it is the only one
  that really needs the Flow Cancel capabilities. Ethereum is the main
  chain that Sui is interacting with in terms of volume moving in and
  out of Sui.
- Refactor calling sites for flow cancel transfer functions so that all
  checks are done in one place. (Should help prevent bugs where only one
  calling site is updated.)
- Add unit tests to ensure that the flow cancel feature works iff valid
  pipes are configured
- Adds unit tests for the pipe type (validity, equality between two
  pipes)
- Modifies pipe.equals() to always return false for invalid pipes
@johnsaigle johnsaigle merged commit 094e10a into wormhole-foundation:main Apr 30, 2025
33 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants