Skip to content

[E2E Test] Validate ClientUpdate after IBC Client Expiration #96

@omarsy

Description

@omarsy

Description

Create a proposal to change the expired IBC client on a chain, enabling a smooth transition to a new client without disrupting interchain communication. This proposal will test and validate the governance process required for such changes.


Steps to Implement

  1. Setup Initial State:

    • Establish an IBC connection between Chain 1 and Chain 2 using an IBC client.
    • Verify initial functionality by transferring tokens or data across chains.
  2. Simulate Client Expiration:

    • Allow the existing IBC client on Chain 1 to expire by advancing time or block height beyond its validity period.
    • Attempt interchain communication, which should fail due to the expired client.
  3. Create and Submit a Governance Proposal:

    • Draft a governance proposal on Chain 1 to replace the expired IBC client with a new client.
    • Submit the proposal for voting, including:
      • New client parameters.
      • Justification for the change.
      • Proofs required for the client state.
  4. Governance Voting:

    • Simulate the voting process to approve the proposal.
    • Confirm that the majority approves the proposal.
  5. Validate the New Client:

    • After the proposal is accepted and executed, verify the new client on Chain 1 is active.
    • Resume IBC communication (e.g., token transfer or queries) to ensure the new client works as expected.

Expected Outcome

  • Governance proposal successfully updates the IBC client on Chain 1 after expiration.
  • Interchain communication resumes without errors using the new client.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions