Skip to content
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

Message Ordering Guarantees with Optional Salted ICA Routing #5503

Open
XxAxe1xX opened this issue Feb 18, 2025 · 0 comments
Open

Message Ordering Guarantees with Optional Salted ICA Routing #5503

XxAxe1xX opened this issue Feb 18, 2025 · 0 comments

Comments

@XxAxe1xX
Copy link

Problem

Is your feature request related to a problem? Please describe.

Currently, Hyperlane message senders have no protocol-level ordering guarantees, which creates challenges for:

  • Middleware contracts using ICAs requiring differential permissioning on destination chains
  • Applications needing to segment state and control message execution order
  • Dependent message processing requiring specific sequencing

Solution

Describe the solution you'd like

Implement an opt-in message ordering system through:

  1. Ordering Hook Mechanism
  • Allow message senders to specify an ordering hook with customizable nonce/salt
  • Hook sends a message to an ordering ISM with commitment to:
    • Original message ID
    • Custom nonce
    • Application-specific metadata
  1. ICA Router Enhancement
  • Add optional salt parameter for ICA derivation
  • Salt becomes part of the unique identifier for message ordering
  • Enables fine-grained control over message sequencing
  1. Ordering ISM
  • New ISM type specifically for enforcing message ordering
  • Validates and maintains ordering commitments
  • Allows different ordering rules per application logic

Technical Implementation Details

  • Extend ICARouter interface to accept salt parameter
  • Create new OrderingHook contract for commitment management
  • Implement OrderingISM with configurable ordering rules
  • Add ordering metadata to message processing pipeline
  • Optimize gas costs for ordering verification

Benefits

  • Opt-in nature preserves existing functionality
  • Flexible ordering rules per application needs
  • Better support for complex middleware architectures
  • Enhanced state management capabilities

Additional Context

  • Related to issue Dependent messages #5352 (Dependent messages)
  • Builds on existing ICA infrastructure
  • Maintains composability with other Hyperlane features
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

1 participant