Blasrodri/migrate hyp to ev prover#285
Blasrodri/migrate hyp to ev prover#285blasrodri wants to merge 11 commits intodamian/add-create-ism-commandfrom
Conversation
This change consolidates all Hyperlane ISM, mailbox, and warp token management operations into the ev-prover CLI, replacing the Go-based hyp CLI tool. Changes: - Added comprehensive CLI commands for ISM operations: * create-ism: Support for ZK, Noop, and Multisig ISMs * create-mailbox: Mailbox creation with ISM configuration * create-hook: Noop and Merkle Tree hook creation * create-warp-token: Collateral token creation * enroll-router: Remote router enrollment for warp routes * announce-validator: Validator announcement for multisig ISMs * deploy-stack: Full end-to-end Hyperlane stack deployment - Added hyperlane_messages.rs to celestia-grpc-client: * Manual proto message definitions for ISM, hooks, and mailbox * IntoProtobufAny trait implementations for all message types * Avoids complex proto generation dependencies - Extended command.rs with implementation for all new commands: * create_ism: Handles ZK, Noop, and Multisig ISM creation * create_hook: Creates Noop or Merkle Tree hooks * create_mailbox: Creates mailbox with ISM and hook configuration * create_warp_token: Creates collateral warp tokens * enroll_router: Enrolls remote routers for cross-chain transfers * announce_validator: Announces validators for multisig ISMs * deploy_stack: Orchestrates full stack deployment Benefits: - Single Rust tool for all ISM operations - Better type safety and error handling - Consistent with existing ev-prover workflows - Eliminates need for separate Go tooling
…ting - Fixed MsgCreateMailbox proto field tags to match hyperlane-cosmos proto definition - local_domain is now tag 2 (was 3) - default_ism is now tag 3 (was 2) - Added automatic validator sorting for MerkleRootMultisigIsm creation - Validators must be sorted in ascending order as required by the chain - Added info logging to show sorted validator list These fixes resolve transaction submission errors during mailbox creation and multisig ISM creation.
…ules Add proto/hyperlane/core/v1/ism_hooks.proto which imports the ISM and hook modules from the hyperlane-cosmos BSR dependency. This enables buf to generate Rust types for all Hyperlane messages including: - hyperlane.core.interchain_security.v1 (ISM creation) - hyperlane.core.post_dispatch.v1 (hook creation) Future work can migrate from manual hyperlane_messages.rs to fully buf-generated types while keeping manual IntoProtobufAny trait implementations for Cosmos transaction submission.
|
I'm happy to migrate the This would be good for general separation of concerns, since the |
Understood. Will address this :) |
Separate Hyperlane deployment operations from ev-prover into a new hyp-cli binary. The ev-prover retains ZK ISM creation by reusing hyp-cli as a library dependency.
Add proto dependencies and generated Rust bindings for ISM and post-dispatch modules.
8fc565b to
7eae30e
Compare
| @@ -0,0 +1,84 @@ | |||
| syntax = "proto3"; | |||
|
|
|||
| package amino; | |||
There was a problem hiding this comment.
i probably need to be able to import this differently
- Remove proto-deps/ directory containing vendored cosmos, gogoproto, and hyperlane proto files - All dependencies now fetched from Buf Schema Registry as declared in buf.yaml - Update README with simplified proto generation instructions
…gistry - Remove hyperlane_messages.rs (manually defined types) - Remove ism_hooks.proto placeholder file - Remove empty amino.rs and gogoproto.rs stub files - Add proto_ext.rs with prost::Name implementations for generated types - Update lib.rs to re-export generated proto types - Fix hyp-cli to work with generated struct signatures
- Remove 7 unused generated proto files (1,918 lines) - Remove empty proto/hyperlane directory - Format imports with cargo fmt
Overview