Tag:
Branch:
Tree:
18056aafdd
0.2.4
0.4.1
0.5.0
0.5.1
0.5.2
0.5.3
06-19-add_ci-default-test
07-01-feat_cli_Add_hyperlane_warp_apply
1.0.0-beta8
3.1.4
CODEOWNERS-ascii
Defcon023/mock_mailbox_size_check
add-delegate
aggregation-hook-improvements
ameten/non-native-token
ameten/scraper-sealevel-e2e
ameten/sealevel-delivery-sequence
ancient8-eth-verify
asaj/addresses
asaj/agent-dev-env
asaj/announce
asaj/block-skew
asaj/check-middlewares
asaj/check-ownables
asaj/ci
asaj/ci-try
asaj/count-lag
asaj/debug
asaj/debug-ci
asaj/deploy
asaj/deploy-ergonomics
asaj/e2e-fast
asaj/enroll
asaj/fern
asaj/gas-profiling
asaj/hardhat
asaj/hardhat-plugin
asaj/hardhat-task
asaj/hooks
asaj/image
asaj/inbox-checkpoints
asaj/index
asaj/kathy-7
asaj/kathy-9
asaj/key-funder
asaj/lag-count
asaj/ll
asaj/metadata-debug
asaj/new-update
asaj/ownable-replicas-dev
asaj/ownership
asaj/ownerships
asaj/ownersss
asaj/pd
asaj/pi-deployer
asaj/poc
asaj/prettier
asaj/readonly
asaj/relayer-checkpoints
asaj/relayer-isms
asaj/router-govern
asaj/schnorr
asaj/schnorr-2
asaj/sdk-proposal
asaj/sealevel-inclusive
asaj/serialize
asaj/solc
asaj/sovereign
asaj/suffix
asaj/upgrade-dev-scripts
asaj/upgrade-rotate-updater
asaj/upgrades
asaj/v2-create2
asaj/v2-exploration
asaj/v2-helm
asaj/v2-main
asaj/workflows
asaj/zkevm
audit-coverage
audit-q3-2024
avious00-link-to-loglevel
avious00-typo-patch
aws-signer-retry
benchmark-multisig
buddies-main-deployment
build-ccip-server
changeset-release/main
changeset-release/release-test
checkInflight
ci-by-path
cli-2.0-beta
cli-figlet
cli-patches
core-msg-encoding
cosmos-gas-prices
cover-mailbox-100%
coverage-flake
create2-deploy
dan/aggregation-ism-rc
dan/bump-relayer-image
dan/configurable-fallback-deprio
dan/cw-types-reuse
dan/debug-cosmos-rpc
dan/e2e-fixes
dan/eip1967
dan/fast-relayer-startup-e2e
dan/gas-escalator-middleware
dan/index-range-refactor
dan/injective-e2e
dan/injective-testnet-agents
dan/keypair-cosmrs
dan/local-svm-setup
dan/lower-txid-channel-size
dan/merkle-tree-hook-indexer
dan/non-evm-cli-warp-deploy
dan/osmosis-test
dan/processed-commitment-sealevel
dan/rc-relayer-profiling
dan/relayer-images-bump
dan/relayer-migrations
dan/retry-cosmos-e2e
dan/rocksdb-config
dan/rust-caching
dan/stage-agent-fixes
dan/testnet-aggregation-ism
dan/tmp-branch
dan/token-config-schema
dan/v3-e2e
dan/v3-sealevel-e2e
dan/va-urls
dan/zksync-testing
danil/validator_deployment_latest_image
deploy-create2-factory-moonbeam
deploy-ica-proxied
deploy-middlewares-1.3.1
deploy-wait
deployer-options
docs-simplifications
drew/manual_processing_config
dynamic-cli-version
eigenlayer
erc165
fallback-routing-hook-deployer
feat/hl-starknet-29-oct
feat/v3-cosmos
flexible-voting-vault
github-pr-stats
hook-agent-testing
hook-ism-contract-READMEs
injective-ism-fix
interchain-call-tests
kunal/arb-l2-hook-contracts
kunal/arb-selfrelay
kunal/arb-sepolia-deployment
kunal/ascii-art
kunal/avs-contract-deployment
kunal/avs-temp
kunal/avs-update-reward
kunal/avs-validator-check-status
kunal/bump-solana-prio-fee-further
kunal/check-msg-value-send-auth-hooks
kunal/ci-checker-warp-fix
kunal/cli-register-ci
kunal/default-hook
kunal/ica-deployment
kunal/ica-govern-testing
kunal/igp-hook
kunal/ism-factory-warp-deploy
kunal/l2-native-bridge-hook
kunal/latest-height-merkle-root-index
kunal/manta-gas-overpayment-fix
kunal/messageIdAuth-replay-protection
kunal/native-arbitrum-hook
kunal/native-gnosis-hook
kunal/native-polygon-hook
kunal/null-metadata
kunal/op-stack-hook-custom-test
kunal/orphan-format-igp-async
kunal/ownable-caching-hook
kunal/rc-kathy-ism-config
kunal/relayer-metadata-null
kunal/revert-multisig-interface
kunal/revert-weighted-multisig-changes
kunal/rez-avs
kunal/special-case-plume-testnet
kunal/stake-weighted-ism
kunal/update-gasOracle-cron-job
kunal/update-gasOracle-deployer
kunal/v3-pr-comments-fixes
kunal/validator-el-sig-posting
kunal/validator-endpoints
kunal/value-router
kunal/verifiedMessageId-param
kunal/verify-ica
kunal/warp-route-checker
kunal/weighted-ism-relayer-change
light-optimistic
lint.only
liquidity-layer-v2
ltyu/core-apply-defaultIsm
ltyu/hook-config
ltyu/sp1-lightclient-ism
ltyu/warp-apply-hook
ltyu/warp-ism-config
ltyu/zerion-configs
mailbox-branch
mailbox-chainid
main
main-auditv2-merge
main-node-ci
main-to-v3
mattie/512-bit-txoutcomes
mattie/auto-update-prs
mattie/automated-vendoring
mattie/caching-requests
mattie/cosmos-stubs
mattie/finality-blocks-config
mattie/fix-kathy
mattie/inclusive-block-range
mattie/infra-drift-fix
mattie/large-runners
mattie/optional-agent-configuration
mattie/reclaim-funds-from-old-relayer-keys
mattie/relayer-debugging
mattie/sealevel-better-patching
mattie/sealevel-dependency-conflicts-fix
mattie/sealevel/dependencies-part-2
mattie/serejke-fix-1924
mattie/typescript-provider-timeouts
mattie/zkevm-context
merkle-tree-hook-indexer
merkle-vs-mapping
mo/check-avs-cli-command
mo/infra-warp-config-generation
mo/key-funder-debug
mo/keyfunder-707db4a27
mo/non-aw-owned-proxy-checks
mo/verify-proxy-contracts
mo/warp-balance-monitor-validator-names
monitor-war-routes-general
multi-message-relay
multisig-init
nam-rebase
nambrot-patch-1
nambrot/add-gcp-address-to-allconfigs
nambrot/arc-test
nambrot/callforwarder
nambrot/celo-safe
nambrot/chain-connection-to-provider
nambrot/checkpointer-local
nambrot/ci-build
nambrot/circle-relayer
nambrot/core-deploy-fixes
nambrot/debug-fork-ci
nambrot/deploy-aggregation-relayer
nambrot/deploy-helloworld
nambrot/deploy-igp
nambrot/deploy-test-recipient
nambrot/deployment-tooling
nambrot/dev-community
nambrot/dockerignore
nambrot/double-update-script
nambrot/extra-partial-config
nambrot/failed-refactor
nambrot/fix-contract-metrics-avalanche
nambrot/fix-contracts-metrics
nambrot/fix-polygon-updater-old-root
nambrot/foundry-in-ica
nambrot/fundraise-xapp
nambrot/generate-message-with-proof
nambrot/hyp7683
nambrot/igp-deployment-woes
nambrot/in-over-or
nambrot/infra-multiprovider
nambrot/kurtosis-cli
nambrot/loop-with-sleep
nambrot/manual-processing-deploy
nambrot/mintable-token-standard
nambrot/nam-run-feedback
nambrot/optics-ts-interface
nambrot/oracle-updates
nambrot/owner-without-ism
nambrot/parallelize-sol-testing
nambrot/polygon-updater-rotation
nambrot/processor-s3-pusher
nambrot/publish-script
nambrot/relay-specific-message
nambrot/remove-dependabot
nambrot/rename-abacus-solidity-typechain
nambrot/rename-network-to-chain
nambrot/repro-2-2-run-locally
nambrot/resolve-lock
nambrot/rotate-mainnet-etherscan
nambrot/rpc-validator
nambrot/scroll-overrides
nambrot/sdk-0.2.4
nambrot/selective-index-on
nambrot/speed-up-events
nambrot/staging-community-provider
nambrot/static-igp
nambrot/superchain-ism
nambrot/trace-level-s3
nambrot/transfer-owner-no-op
nambrot/try-gas-payment-test-abstraction
nambrot/update-kathy
nambrot/update-optics-provider
nambrot/updater-pause
nambrot/verification-fies
nambrot/watcher-test
nambrot/yo-deploy
nexus-neutron-validators
noah/agg-failure
noah/co
noah/dr-fix
noah/move-safe
noah/no-warp
noah/node-expwarn-cli
noah/prompt
noah/root
noah/warp-ica
noah/zod-2
op-interceptor-deployer
op-stack-hook-deployment
opt-mailbox-delivered
optics-v2
parameterize-infra-paths
pb/chore-test-conditions
pb/duplicate-chainid-support
pb/enable-hyperliquidevmtestnet
pb/sprint32-mainnet
pb/stride-va
pb/submitter-types
pb/test-e2e-breaks
pb/turbo
pb/verify-viction
pb/zerion
pb/zksync
pjson-pruning
pr-analytics
processor-fixes
public-main
rc-validators
rebalance-collateral
retry-signer
reverse-ica
revert-964-hacken-critical-1
rossy/cli-version-fix
rossy/codespell-changeset
rossy/multiprovider-no-generic
router-not-upgradeable
router<0.8
routing-interceptor
rpc-fork-cache
schema-fixes
sdk-release
snapshot-igp-config
storage-ism
submodules-1.0.0
submodules-path-2
suppress-coverage-patch
symbiotic
test-recipient-ism-config
test-sol-fixes
test-sol-speed
testnet-dtm
testnet4
testnet4-deployment
tmp-keyfunder
token-testing-forge
transfer-and-call
transient-current-message-id
trevor/1.4.2-beta69
trevor/add-injective-back
trevor/addtl-igp-cmds
trevor/arbitrum-gas-amounts
trevor/bridge-app-interchain-gas-contracts
trevor/conditional-middlewares-suck
trevor/cosmos-cleanup-2
trevor/dao-ism
trevor/debug-verbosity
trevor/debugging-sept-21
trevor/decimal-consistency-checker
trevor/dependency-attempts
trevor/deploy-relayer-funder-multi-context
trevor/deploy-testrecipient-rollup-testnets
trevor/deploy-v2
trevor/deploy-v2-relayer-feb-1-2024
trevor/deploying-ancient8
trevor/deploying-to-zbc-testnet
trevor/disable-rarichain-rpc
trevor/eclipsedevnet-deploy
trevor/env-var-tip
trevor/fallback-igp
trevor/fastusd-infra-checking
trevor/fix-announcement-issues
trevor/fix-e2e-mar-31
trevor/fix-feat/deploy-new-rc
trevor/fix-inaccurate-svm-comment
trevor/fix-polygon-updater-old-root
trevor/fix-processor-priority
trevor/force-readonly-collateral-mints
trevor/gelato-mainnet-abacus
trevor/gelato-testnet2
trevor/grpc-refactor
trevor/hacky-nautilus-indexing-fix-attempt
trevor/helloworld-check-mostly-works
trevor/helloworld-program
trevor/helloworld-program-and-tooling-not-working
trevor/higher-sol-fees
trevor/key-funder-fallbackprovider
trevor/last-agent-release
trevor/legacy-ethers
trevor/local-igp-for-playing-with
trevor/lz-reorg-periods
trevor/mainnet-rc-quorumprovider
trevor/merge-main-jul-6
trevor/merge-v3
trevor/merkle-indexing-as-message
trevor/native-warp-route-allow-donate
trevor/new-featv3-cosmos
trevor/nits-and-no-invariant
trevor/no-address-filter
trevor/no-eip-1559
trevor/on-chain-fee-quoting-calculator
trevor/opentelemetry
trevor/opentelemetry-stackdriver
trevor/oracle-updates-mode-blast-try-batching
trevor/parallel-pod-management-policy
trevor/play-with-ci
trevor/playing-with-validator-announce
trevor/port-over-addtl-igp-cmds
trevor/proteus-from-last-agent-release
trevor/proteus-from-last-agent-release-1
trevor/quick-scroll-moonbeam-fix
trevor/read-txs-nov-8
trevor/relayer-use-gelato-scaffolding
trevor/sealevel-igp
trevor/sealevel-igp-quotes
trevor/sei-fix
trevor/send-unblocking-tx
trevor/some-svm-improvements
trevor/suggestion
trevor/svm-collateral-readonly-mint
trevor/test-dispatch-return-value
trevor/try-ethers-quorum-estimate-gas-fix
trevor/try-fix-e2e
trevor/upgrade-registry-update
trevor/use-gas-estimate-components-in-arb
trevor/use-secret-rpc-urls-awk-branch-setup
trevor/wip-transfer-test
trusted-relayer-ism
typechain11
upgradable-warp-routes-rossy
upgrades-v2
v1
v2
v2-2
v2-create2
v3
v3-agents
v3-agents-feedback
v3-agents-rebase
v3-review
validator-correctness
verify-igp
verify-mainnet
verify-new-testnet2
warp-deploy-ism-config
warp-route-v3
webbhorn/gelato-PR-submitter-prep
webbhorn/gelato-tip
webbhorn/gelato-tip-wip
webbhorn/gelato/demo-cli
webbhorn/gelato/op
xeno/better-chain-selection-for-single-chain
xeno/ica-router-management
xeno/ica-router-management-update
xeno/update-ism-derivation-for-ica-support
yarn-4.1.0
yorhodes-patch-1
yorhodes/427
yorhodes/429
yorhodes/450
yorhodes/479
yorhodes/inbox-enrollments
zksync
0.2.1
0.2.4
0.3.1
1.0.0-beta5
2023-06-08
@hyperlane-xyz/cli@3.10.0
@hyperlane-xyz/cli@3.11.0
@hyperlane-xyz/cli@3.11.1
@hyperlane-xyz/cli@3.13.0
@hyperlane-xyz/cli@3.13.0-next.0
@hyperlane-xyz/cli@3.14.0
@hyperlane-xyz/cli@3.15.0
@hyperlane-xyz/cli@3.15.1
@hyperlane-xyz/cli@3.16.0
@hyperlane-xyz/cli@3.2.0
@hyperlane-xyz/cli@3.3.0
@hyperlane-xyz/cli@3.4.0
@hyperlane-xyz/cli@3.5.0
@hyperlane-xyz/cli@3.5.1
@hyperlane-xyz/cli@3.6.0
@hyperlane-xyz/cli@3.6.1
@hyperlane-xyz/cli@3.6.2
@hyperlane-xyz/cli@3.7.0
@hyperlane-xyz/cli@3.8.0
@hyperlane-xyz/cli@3.8.1
@hyperlane-xyz/cli@3.8.2
@hyperlane-xyz/cli@3.9.0
@hyperlane-xyz/cli@4.0.0
@hyperlane-xyz/cli@4.0.0-alpha.0
@hyperlane-xyz/cli@4.0.0-alpha.1
@hyperlane-xyz/cli@4.0.0-alpha.2
@hyperlane-xyz/cli@4.0.0-beta
@hyperlane-xyz/cli@4.1.0
@hyperlane-xyz/cli@5.1.0
@hyperlane-xyz/cli@5.1.1
@hyperlane-xyz/cli@5.1.2
@hyperlane-xyz/cli@5.2.0
@hyperlane-xyz/cli@5.2.1
@hyperlane-xyz/cli@5.2.1-beta.0
@hyperlane-xyz/cli@5.3.0
@hyperlane-xyz/cli@5.4.0
@hyperlane-xyz/cli@5.5.0
@hyperlane-xyz/cli@5.6.0
@hyperlane-xyz/cli@5.6.1
@hyperlane-xyz/cli@5.6.2
@hyperlane-xyz/cli@5.7.0
@hyperlane-xyz/cli@6.0.0
@hyperlane-xyz/cli@7.0.0
@hyperlane-xyz/cli@7.1.0
@hyperlane-xyz/cli@7.2.0
@hyperlane-xyz/core@3.1.10
@hyperlane-xyz/core@3.10.0
@hyperlane-xyz/core@3.11.0
@hyperlane-xyz/core@3.11.1
@hyperlane-xyz/core@3.12.0
@hyperlane-xyz/core@3.13.0
@hyperlane-xyz/core@3.13.0-next.0
@hyperlane-xyz/core@3.14.0
@hyperlane-xyz/core@3.15.0
@hyperlane-xyz/core@3.15.1
@hyperlane-xyz/core@3.16.0
@hyperlane-xyz/core@3.2.0
@hyperlane-xyz/core@3.3.0
@hyperlane-xyz/core@3.4.0
@hyperlane-xyz/core@3.5.0
@hyperlane-xyz/core@3.5.1
@hyperlane-xyz/core@3.6.0
@hyperlane-xyz/core@3.6.1
@hyperlane-xyz/core@3.6.2
@hyperlane-xyz/core@3.7.0
@hyperlane-xyz/core@3.8.0
@hyperlane-xyz/core@3.8.1
@hyperlane-xyz/core@3.8.2
@hyperlane-xyz/core@3.9.0
@hyperlane-xyz/core@4.0.0
@hyperlane-xyz/core@4.0.0-alpha.0
@hyperlane-xyz/core@4.0.0-alpha.1
@hyperlane-xyz/core@4.0.0-alpha.2
@hyperlane-xyz/core@4.0.0-beta
@hyperlane-xyz/core@4.1.0
@hyperlane-xyz/core@5.1.0
@hyperlane-xyz/core@5.1.1
@hyperlane-xyz/core@5.1.2
@hyperlane-xyz/core@5.2.0
@hyperlane-xyz/core@5.2.1
@hyperlane-xyz/core@5.2.1-beta.0
@hyperlane-xyz/core@5.3.0
@hyperlane-xyz/core@5.4.0
@hyperlane-xyz/core@5.4.1
@hyperlane-xyz/core@5.5.0
@hyperlane-xyz/core@5.6.0
@hyperlane-xyz/core@5.6.1
@hyperlane-xyz/core@5.7.0
@hyperlane-xyz/core@5.7.1
@hyperlane-xyz/core@5.8.0
@hyperlane-xyz/core@5.8.1
@hyperlane-xyz/core@5.8.2
@hyperlane-xyz/github-proxy@5.2.0
@hyperlane-xyz/github-proxy@5.2.1-beta.0
@hyperlane-xyz/helloworld@3.1.10
@hyperlane-xyz/helloworld@3.10.0
@hyperlane-xyz/helloworld@3.11.0
@hyperlane-xyz/helloworld@3.11.1
@hyperlane-xyz/helloworld@3.12.0
@hyperlane-xyz/helloworld@3.13.0
@hyperlane-xyz/helloworld@3.13.0-next.0
@hyperlane-xyz/helloworld@3.14.0
@hyperlane-xyz/helloworld@3.15.0
@hyperlane-xyz/helloworld@3.15.1
@hyperlane-xyz/helloworld@3.16.0
@hyperlane-xyz/helloworld@3.2.0
@hyperlane-xyz/helloworld@3.3.0
@hyperlane-xyz/helloworld@3.4.0
@hyperlane-xyz/helloworld@3.5.0
@hyperlane-xyz/helloworld@3.5.1
@hyperlane-xyz/helloworld@3.6.0
@hyperlane-xyz/helloworld@3.6.1
@hyperlane-xyz/helloworld@3.6.2
@hyperlane-xyz/helloworld@3.7.0
@hyperlane-xyz/helloworld@3.8.0
@hyperlane-xyz/helloworld@3.8.1
@hyperlane-xyz/helloworld@3.8.2
@hyperlane-xyz/helloworld@3.9.0
@hyperlane-xyz/helloworld@4.0.0
@hyperlane-xyz/helloworld@4.0.0-alpha.0
@hyperlane-xyz/helloworld@4.0.0-alpha.1
@hyperlane-xyz/helloworld@4.0.0-alpha.2
@hyperlane-xyz/helloworld@4.0.0-beta
@hyperlane-xyz/helloworld@4.1.0
@hyperlane-xyz/helloworld@5.1.0
@hyperlane-xyz/helloworld@5.1.1
@hyperlane-xyz/helloworld@5.1.2
@hyperlane-xyz/helloworld@5.2.0
@hyperlane-xyz/helloworld@5.2.1
@hyperlane-xyz/helloworld@5.2.1-beta.0
@hyperlane-xyz/helloworld@5.3.0
@hyperlane-xyz/helloworld@5.4.0
@hyperlane-xyz/helloworld@5.5.0
@hyperlane-xyz/helloworld@5.6.0
@hyperlane-xyz/helloworld@5.6.1
@hyperlane-xyz/helloworld@5.6.2
@hyperlane-xyz/helloworld@5.7.0
@hyperlane-xyz/helloworld@6.0.0
@hyperlane-xyz/helloworld@7.0.0
@hyperlane-xyz/helloworld@7.1.0
@hyperlane-xyz/helloworld@7.2.0
@hyperlane-xyz/sdk@3.1.10
@hyperlane-xyz/sdk@3.10.0
@hyperlane-xyz/sdk@3.11.0
@hyperlane-xyz/sdk@3.11.1
@hyperlane-xyz/sdk@3.12.0
@hyperlane-xyz/sdk@3.13.0
@hyperlane-xyz/sdk@3.13.0-next.0
@hyperlane-xyz/sdk@3.14.0
@hyperlane-xyz/sdk@3.15.0
@hyperlane-xyz/sdk@3.15.1
@hyperlane-xyz/sdk@3.16.0
@hyperlane-xyz/sdk@3.2.0
@hyperlane-xyz/sdk@3.3.0
@hyperlane-xyz/sdk@3.4.0
@hyperlane-xyz/sdk@3.5.0
@hyperlane-xyz/sdk@3.5.1
@hyperlane-xyz/sdk@3.6.0
@hyperlane-xyz/sdk@3.6.1
@hyperlane-xyz/sdk@3.6.2
@hyperlane-xyz/sdk@3.7.0
@hyperlane-xyz/sdk@3.8.0
@hyperlane-xyz/sdk@3.8.1
@hyperlane-xyz/sdk@3.8.2
@hyperlane-xyz/sdk@3.9.0
@hyperlane-xyz/sdk@4.0.0
@hyperlane-xyz/sdk@4.0.0-alpha.0
@hyperlane-xyz/sdk@4.0.0-alpha.1
@hyperlane-xyz/sdk@4.0.0-alpha.2
@hyperlane-xyz/sdk@4.0.0-beta
@hyperlane-xyz/sdk@4.1.0
@hyperlane-xyz/sdk@5.1.0
@hyperlane-xyz/sdk@5.1.1
@hyperlane-xyz/sdk@5.1.2
@hyperlane-xyz/sdk@5.2.0
@hyperlane-xyz/sdk@5.2.1
@hyperlane-xyz/sdk@5.2.1-beta.0
@hyperlane-xyz/sdk@5.3.0
@hyperlane-xyz/sdk@5.4.0
@hyperlane-xyz/sdk@5.5.0
@hyperlane-xyz/sdk@5.6.0
@hyperlane-xyz/sdk@5.6.1
@hyperlane-xyz/sdk@5.6.2
@hyperlane-xyz/sdk@5.7.0
@hyperlane-xyz/sdk@6.0.0
@hyperlane-xyz/sdk@7.0.0
@hyperlane-xyz/sdk@7.1.0
@hyperlane-xyz/sdk@7.2.0
@hyperlane-xyz/utils@3.1.10
@hyperlane-xyz/utils@3.10.0
@hyperlane-xyz/utils@3.11.0
@hyperlane-xyz/utils@3.11.1
@hyperlane-xyz/utils@3.12.0
@hyperlane-xyz/utils@3.13.0
@hyperlane-xyz/utils@3.13.0-next.0
@hyperlane-xyz/utils@3.14.0
@hyperlane-xyz/utils@3.15.0
@hyperlane-xyz/utils@3.15.1
@hyperlane-xyz/utils@3.16.0
@hyperlane-xyz/utils@3.2.0
@hyperlane-xyz/utils@3.3.0
@hyperlane-xyz/utils@3.4.0
@hyperlane-xyz/utils@3.5.0
@hyperlane-xyz/utils@3.5.1
@hyperlane-xyz/utils@3.6.0
@hyperlane-xyz/utils@3.6.1
@hyperlane-xyz/utils@3.6.2
@hyperlane-xyz/utils@3.7.0
@hyperlane-xyz/utils@3.8.0
@hyperlane-xyz/utils@3.8.1
@hyperlane-xyz/utils@3.8.2
@hyperlane-xyz/utils@3.9.0
@hyperlane-xyz/utils@4.0.0
@hyperlane-xyz/utils@4.0.0-alpha.0
@hyperlane-xyz/utils@4.0.0-alpha.1
@hyperlane-xyz/utils@4.0.0-alpha.2
@hyperlane-xyz/utils@4.0.0-beta
@hyperlane-xyz/utils@4.1.0
@hyperlane-xyz/utils@5.1.0
@hyperlane-xyz/utils@5.1.1
@hyperlane-xyz/utils@5.1.2
@hyperlane-xyz/utils@5.2.0
@hyperlane-xyz/utils@5.2.1
@hyperlane-xyz/utils@5.2.1-beta.0
@hyperlane-xyz/utils@5.3.0
@hyperlane-xyz/utils@5.4.0
@hyperlane-xyz/utils@5.5.0
@hyperlane-xyz/utils@5.6.0
@hyperlane-xyz/utils@5.6.1
@hyperlane-xyz/utils@5.6.2
@hyperlane-xyz/utils@5.7.0
@hyperlane-xyz/utils@6.0.0
@hyperlane-xyz/utils@7.0.0
@hyperlane-xyz/utils@7.1.0
@hyperlane-xyz/utils@7.2.0
@hyperlane-xyz/widgets@5.0.0
@hyperlane-xyz/widgets@5.1.0
@hyperlane-xyz/widgets@5.1.1
@hyperlane-xyz/widgets@5.1.2
@hyperlane-xyz/widgets@5.2.0
@hyperlane-xyz/widgets@5.2.1
@hyperlane-xyz/widgets@5.2.1-beta.0
@hyperlane-xyz/widgets@5.3.0
@hyperlane-xyz/widgets@5.4.0
@hyperlane-xyz/widgets@5.5.0
@hyperlane-xyz/widgets@5.6.0
@hyperlane-xyz/widgets@5.6.1
@hyperlane-xyz/widgets@5.6.2
@hyperlane-xyz/widgets@5.7.0
@hyperlane-xyz/widgets@6.0.0
@hyperlane-xyz/widgets@7.0.0
@hyperlane-xyz/widgets@7.1.0
@hyperlane-xyz/widgets@7.2.0
agents-1.0.0
agents-1.0.1
agents-2023-04-14
agents-2023-05-25
agents-2023-05-26
agents-2023-06-08
agents-2023-06-14
agents-2023-07-24
agents-2023-07-25
agents-2023-08-23
agents-2023-11-28
agents-2023-11-29
agents-2023-11-30
agents-2023-12-14
agents-2024-01-29
agents-2024-03-19
agents-2024-03-21
agents-2024-05-30
agents-2024-06-19
agents-v1.0.0
audit-fyeo-responses-0
audit-remediations
audit-scope-0
audit-v2
fyeo-fixes
hacken-fixes
mainnet-contracts
show
testnet2-contracts
testnet3
v.0.2.0
v.1.5.3
v0.0.0-testnet.0
v0.2.0
v0.2.1
v0.2.2
v0.2.3
v0.3.1
v0.4.0
v0.4.1
v0.5.0
v0.5.0-beta0
v0.5.1
v0.5.2
v0.5.3
v0.5.5
v1.0.0
v1.0.0-beta1
v1.0.0-beta5
v1.0.0-beta6
v1.1.0
v1.2.0
v1.2.1
v1.2.2
v1.2.3
v1.3.0
v1.3.1
v1.3.2
v1.3.3
v1.3.4
v1.3.7
v1.4.0
v1.4.1
v1.5.0
v1.5.1
v1.5.8
v2
v3-audit-remediations
v3-solidity
zksyncbeta
${ noResults }
28 Commits (18056aafdd0c74cba732366288893c509adc88ee)
Author | SHA1 | Message | Date |
---|---|---|---|
Daniel Savu |
942aba8e55
|
feat(evm): collaborative indexing through txid sharing (#3833)
### Description - improved indexing reliability by sharing channels between indexing tasks, such that they inform one another when they come across a hyperlane-related transaction - the receiving end will then get the receipt of that tx and filter it for events relevant to it - this adds some flexibility to indexing since we can stop relying on watermark cursor entirely: as long as we have one task using sequence indexing, all others can rely on being informed by their channels about what txs to index - this PR is only for the EVM chains, but can be easily extended ### Drive-by changes - Enforces gas payments for all chains in e2e (previously this only used to be the case for sealevel) - The channel size is configured per type, similarly to the indexing cursor, in `contract_sync/cursors/mod.rs` - Reduces log verbosity is some places, e.g. by manually implementing `Debug` to exclude fields that aren't relevant to debugging (maybe there's even a macro annotation to exclude, but I haven't checked) - Renames `MpmcReceiver` -> `BroadcastReceiver` ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3267 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing e2e tested with the watermark cursor manually disabled |
6 months ago |
Daniel Savu |
be43b0fd91
|
feat: use batching configs on all execution environments (#3723)
### Description While we only have a tx batching implementation available for EVM chains, we still parallelize the `prepare` and `confirm` steps in the serial submitter according to the `maxBatchSize` config item. To reap the benefits of this change, we need to make these configs universal, because they were only defined within `h_eth::ChainConnectionConf`. This PR adds slight duplication because it adds the batching config on each individual connection config, but it's far simpler than including it in the `ChainConf` struct. The latter would've required changing all the trait impls of `BuildableWithProvider` to include the batching config. ### Drive-by changes Renames `serial_submitter` to `op_submitter` since it's no longer serial. ### Related issues Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3722 ### Backward compatibility Yes ### Testing Manually - added the configs to cosmos e2e and checked the logs |
7 months ago |
Daniel Savu |
f46cf7708e
|
Indexing Type Wrapper (#3610)
### Description Depends on https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/3544. Wraps all types to be indexed in an `Indexed<T>` struct in the relayer. This allows for using sequece-aware cursors for data that doesn't contain a sequence but can have it inferred from metadata (as is the case for the IGP on sealevel). `Indexed<T>` stores the sequence as an `Option`, so the db can have additional sequence data stored in it when the sequence is defined - this is how `process_indexed_gas_payment` is implemented now. In addition, the IGP payments and Deliveries are configured to be indexed with a `SequenceAware` cursor on sealevel (see `cursors/mod.rs`). ### Drive-by changes Implements the custom `Encode` and `Decode` traits for `IndexingDecorator`, which can be generalized to `Option<T>` where `T: Encode + Decode`. ### Related issues <!-- - Fixes #[issue number here] --> ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing E2E |
7 months ago |
Daniel Savu |
5aeb83a2e5
|
Relayer Message Batching to EVM (#3656)
### Description Status: - [x] op-queue scaffolding - [x] hyperlane-ethereum integration with multicall - [x] new config items - [x] actually build batch in the op-queue submit step - [x] e2e tests with batching configured - [x] dynamic batch sizes (batch as many messages as the prepare step has ready) - [x] parallelize metadata building - [ ] proportional IGP deduction ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues - Fixes #3628 - Fixes #3630 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> --------- Co-authored-by: Trevor Porter <tkporter4@gmail.com> |
7 months ago |
Trevor Porter |
26a26f4073
|
Agent transaction overrides, ensure agent configs are updated in CI (#3563)
### Description - Adds some basic transaction overrides for Ethereum chains to be used by the agents. This follows the existing config schema in chain metadata that we have been using on the TS side for a while. The overrides are as follows: - `transactionOverrides.gasPrice` - if specified, non EIP-1559 txs are used, and they use this gasPrice - `transactionOverrides.gasLimit` - if specified, this takes precedence over any gas estimation that's done and is the gas limit that's used for txs. (This is pretty niche and I don't imagine we'll ever wanna use this internally, but happens to cover the use case described [here](https://discord.com/channels/935678348330434570/984123861144600587/1224617234580766741), which is nice to cover) - `transactionOverrides.maxFeePerGas` - if specified and if the chain supports EIP 1559 txs, is used for the `maxFeePerGas` - `transactionOverrides.maxPriorityFeePerGas` - if specified and if the chain supports EIP 1559 txs, is used for the `maxPriorityFeePerGas` - Updates some of the transaction overrides in mainnet3 / testnet4 to be more reasonable now that we'll be using them to submit transactions pretty frequently - Note that atm the transaction overrides are most easily applied to the agents via the config JSONs, and not via our K8s configuration. The upshot of this is if we wanna change a transaction override right now, the easiest way to do it will be to run `update-agent-config.ts` and then build a new image. Created https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3565 to track making this experience better - Part of this change means that it's more important to keep the `transactionOverrides` specified in the SDK / infra up to date with the agent config. So I ended up doing https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3325 along the way, which also required doing https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3311. - To fix the issue with arbitrum blocks, we now require the index.from to be specified in the chain metadata if the chain's technical stack is arbitrum nitro - A new script, `update-agent-config.ts` is added, and it's ran for mainnet3 and testnet4 in CI to make sure there's no diff (similar idea to what we do with prettier) - Along the way I renamed mainnet3_config.json and testnet4_config.json to mainnet_config.json and testnet_config.json. This has been a source of confusion with ppl in the past - in v2 we named them without any numeric suffixes, so we now just do that again ### Drive-by changes - There's a drive-by to poll more frequently for pending transactions (2 seconds). The default is 7 seconds in Ethers, and for many chains that have really quick block times, this may be a way for us to speed up us learning that a transaction is included - Don't enforce gas on the inevm routes, looks like there's some weirdness there that was reported by Nam ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3562 - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3325 - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3311 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> |
8 months ago |
Daniel Savu |
e737d998ff
|
Cosmos block-by-block indexing (#3245)
### Description Implements cosmos block-by-block indexing, parallelizing where possible: the `block` and `block_results` calls, and the individual block queries within a range. Also reuses the existing `handle_txs` logic, to improve readability. ### Drive-by changes Adds `tokio::task::JoinError` to the `hyperlane-core` error enum ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3234 - Added some hacky retrying logic to `get_logs_in_block`, since we were seeing lots of `503` http errors. In https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3264 we should make sure to remove this and propagate the error instead, to retry via the cursor / indexer logic. I edited the description of 3264 to reflect this ### Backward compatibility Yes ### Testing e2e --------- Co-authored-by: Trevor Porter <trkporter@ucdavis.edu> |
9 months ago |
Trevor Porter |
9a83eb4d57
|
Sequence-aware indexing refactor (#3262)
### Description Part 1 of an indexing refactor. This mostly focuses on the sequence-aware cursors. Changes: - Some renames, e.g. `SequenceIndexer` -> `SequenceAwareIndexer`, `sequence_and_tip` -> `latest_sequence_count_and_tip` - Moved cursors out of `contract_sync/cursor.rs` into `contract_sync/cursors/*` - The goal was to make the the Forward sequence-aware cursor, the Backward sequence-aware, and the ForwardBackward sequence aware cursors more resilient, easier to understand, and better tested. - General strategy for doing this was to: - Only move onto a new range to index if the logs passed into the cursor's `update` function justify this - If updated with any weird data, like gaps in logs, rewind the cursor and retry previously queried ranges I'd recommend starting the review in the following order: 1. `rust/hyperlane-base/src/contract_sync/cursors/sequence_aware/forward.rs` - where `ForwardSequenceAwareSyncCursor` & tests live 2. `rust/hyperlane-base/src/contract_sync/cursors/sequence_aware/backward.rs` - where `BackwardSequenceAwareSyncCursor` & tests live 3. `rust/hyperlane-base/src/contract_sync/cursors/sequence_aware/mod.rs` - where `ForwardBackwardSequenceAwareSyncCursor` lives ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues <!-- - Fixes #[issue number here] --> ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> |
9 months ago |
Daniel Savu |
3cbb06a07a
|
feat: fetch chain-specific metrics in standalone task (#3214)
### Description Spawning a tokio task to fetch chain-specific metrics in provider middleware was wasteful because we ended up with 15 tasks doing the same job. Now there is a single task that is spawned inside the relayer, which I added in the struct that used to only fetch relayer balance. Some questions: - I'm realising in the current state I'm probably removing these metrics from validators. Lmk if yes and I'll add back - the chain-specific metrics were moved out of `MiddlewareMetrics` because they're no longer part of middleware, but I wasn't sure where to place them. Maybe `CoreMetrics` is a better place than the current `custom_metrics.rs` file? `tokio-metrics` turned out not to be useful because we'd need to instrument every call site of `tokio::spawn` with it. We should still do it but as a separate task imo. ### Drive-by changes - This PR also makes it very easy to add the metrics tasks for new chains, by extending the `HyperlaneProvider` trait with a `get_chain_metrics` call which seems reasonably general to me to have implemented by all providers. (Bc we currently only track these for evm chains) - the description, naming and logic of the `gas_price` metric was also changed to support new chains ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3047 ### Backward compatibility Yes ### Testing Still need to manually test |
10 months ago |
Daniel Savu |
f2a0e92c7f
|
Cosmos grpc fallbackprovider (#3139)
### Description Implements grpc fallback provider logic for cosmos - initially tried implementing the fallback provider deprioritization logic at middleware level like in the EVM. The difference between ethers and cosmrs is that in the latter, middleware can only live at the transport layer (`tower` crate level). - based on this github [issue](https://github.com/hyperium/tonic/issues/733), that actually doesn't look possible, because the http::Request type isn't `Clone` so it can't be submitted to multiple providers - ended up implementing the fallback provider at the application layer, by keeping an array of grpc channels - There is now a `call` method in `hyperlane_core::FallbackProvider` which I'm actually really happy with. This method handles the fallbackprovider-specific logic by taking in an async closure, running it on each provider, and iterating providers if the closure call fails. In `grpc.rs` you can see how this is slightly verbose but I think it's quite manageable. The only part that bugs me is having to duplicate `Pin::from(Box::from(future))`, but that's need afaict because the regular closure returns an anonymous type - adds `grpcUrls` and `customGrpcUrls` config items - tests the cosmos fallback provider e2e ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues - Fixes: https://github.com/hyperlane-xyz/issues/issues/998 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> |
10 months ago |
Huulu |
3ea5dd7b66
|
chore(rust): proofreading (#3152)
Came across few typos while browsing ./rust. One of them is an error message displayed to the user, rest are comments. Hope I could be of any help. Have a nice week-end Co-authored-by: Daniel Savu <23065004+daniel-savu@users.noreply.github.com> |
10 months ago |
Daniel Savu |
d18f7ae8e1
|
Cosmos gas price config (#3042)
### Description Adds a cosmos-specific config item for setting the minimum gas price, in the format returned by the `cosmos.base.node.v1beta1.Service/Config` cosmos-sdk grpc endpoint. ### Related issues - Fixes https://github.com/hyperlane-xyz/issues/issues/810 ### Backward compatibility No. Will break existing cosmos configs. ### Testing None yet, will test in e2e |
12 months ago |
Daniel Savu |
8e44bc1b81
|
feat: sealevel merkle indexer + e2e (#3053)
Depends on https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/3048 Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/3046 Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2754 |
12 months ago |
Daniel Savu |
98bb228a96
|
Sealevel balance metrics (#3025)
Publishes sealevel balance as a relayer metric **Drive-by Changes** - Creates `HyperlaneSealevelError`, a `hyperlane-sealevel` specific type to avoid including sealevel errors in `hyperlane-core`'s `ChainCommunicationError`. It's pretty empty now, but we have a starting point now. This follows the approach used in `hyperlane-cosmos` too. - Includes an rpc provider instance in `SealevelProvider`, and uses it to add `get_balance` on `SealevelProvider`. **Testing** None, as sealevel e2e is currently disabled |
1 year ago |
Daniel Savu |
77aa58c581
|
Relayer balance metrics (#2976)
Done: - scaffolding for fetching custom agent metrics - abstractions for building a metrics fetcher for a given VM - querying cosmos balances; e2e tested. - querying evm balances; e2e tested. - **Note that as a result, evm addresses are now no longer zero-padded when printed in the logs. This may break existing log queries** - fixed a nasty bug on ubuntu where wasmd (osmosisd dependency, part of the grpc query flow) would panic when a block is specified via `x-cosmos-block-height`. The fix was to bump the version of osmosisd from `19.0.0` to `20.5.0`. **Note that when running e2e on Mac OS, the osmosis version in use is still 19.0.0**. That's because we need a fork that publishes a darwin target binary (currently pointing [here](https://github.com/hashableric/osmosis/releases/download/v19.0.0-mnts/osmosisd-19.0.0-mnts-darwin-arm64.tar.gz)) For follow up PR: - sealevel balance querying I'm open to all renaming suggestions, I just tried to speed through and didn't ponder names too much Relates to https://github.com/hyperlane-xyz/issues/issues/701 Closes https://github.com/hyperlane-xyz/issues/issues/702 (because the balance becomes available in the metrics endpoint for polling) |
1 year ago |
Yorke Rhodes |
1d18549755
|
Merge main to v3 (#2812)
|
1 year ago |
Daniel Savu |
af5bd88aa8
|
V3 agents rebase (#2746)
### Description It's your favourite PR coming right back... V3 agents! Closes https://github.com/hyperlane-xyz/issues/issues/561 Builds on top of https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/2742 Depends on https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/2681 for e2e testing This PR includes: - [x] Merkle tree hook indexer - [x] Merkle tree builder task - [x] Update submitter to trigger retries if no proof is available yet Slightly more detailed overview of the work here: https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2720#issuecomment-1724038643 <!-- What's included in this PR? --> ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues <!-- - Fixes #[issue number here] --> ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> --------- Co-authored-by: -f <kunalarora1729@gmail.com> Co-authored-by: Trevor Porter <trkporter@ucdavis.edu> Co-authored-by: Kunal Arora <55632507+aroralanuk@users.noreply.github.com> Co-authored-by: Mattie Conover <git@mconover.dev> Co-authored-by: Guillaume Bouvignies <guillaumebouvignies@gmail.com> Co-authored-by: Yorke Rhodes <yorke@hyperlane.xyz> Co-authored-by: Guillaume Bouvignies <guillaume.bouvignies@kurtosistech.com> |
1 year ago |
Trevor Porter |
62ab488db9
|
Sealevel IGP debugging, temporarily change Sealevel gas payment policy (#2758)
### Description - Some small changes to help with debugging sealevel IGP - Turns out the GasPaymentAccount data format onchain is different from the one in `main`. This causes IGP indexing to not work in the wild, but it works in e2e. Because we were planning to change the IGP anyways as we transfer ownership to Zebec, this isn't so bad - so temporarily just not enforcing ZBC warp route Solana -> Nautilus gas payments. In practice, we're still effectively enforcing gas payments because the warp route will pay for gas ### Drive-by changes - Also added the new BSC POSE addy ### Related issues n/a ### Backward compatibility yes ### Testing Deployed, poked around, used cmds |
1 year ago |
Kunal Arora |
f0e4f2b89b
|
Prevent invalid destination griefing for the relayer (#2703)
### Description - Adds destinationDomain to the `GasPayment` event - recording destination domain as `destination` while reading events for the relayer ### Drive-by changes - none ### Related issues - fixes https://github.com/hyperlane-xyz/issues/issues/475 ### Backward compatibility No, change in event emitted and relayer indexing ### Testing - Unit --------- Signed-off-by: -f <kunalarora1729@gmail.com> Co-authored-by: Yorke Rhodes <yorke@hyperlane.xyz> |
1 year ago |
Daniel Savu |
903af462d3
|
chore(sealevel igp indexing): reduce log verbosity (#2724)
Removes some unnecessary logs from the sealevel igp indexing fn. Also instruments the eta calculator in response to https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2723 ### Description <!-- What's included in this PR? --> ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues <!-- - Fixes #[issue number here] --> ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> |
1 year ago |
Trevor Porter |
2d8fced77a
|
Support using Squads multisig with sealevel tooling, support ownership transfers in tooling (#2700)
### Description Sadly, there's no programmatic way to submit transactions to Squads via an API or anything. As a workaround, if `-k` is passed a Pubkey and not a path to a Keypair as the payer, transactions will instead be logged in a base58 serialized format that can then be copied into Squads. Instructions for exactly how to do this are found in our Notion So this includes: * Allow for the payer to just be a Pubkey without a Keypair * Some commands & functions to allow for ownership transfer ### Drive-by changes * There was a whole directory `rust/chains/hyperlane-sealevel/src/solana` that somehow got into main, I deleted this * Cleaned up some logs to be formatted more nicely ### Related issues part of https://github.com/hyperlane-xyz/issues/issues/545 ### Backward compatibility backward compatible ### Testing Transferred ownership of devnet --------- Co-authored-by: Daniel Savu <23065004+daniel-savu@users.noreply.github.com> |
1 year ago |
Daniel Savu |
71e8988ccd
|
Sealevel igp indexing (#2585)
### Description Depends on https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/2583 Indexes IGP payments related to the relayer's data pda address. Unless this address is specified in the config (`sealevel.relayer_account `), no filtering is applied and all IGP payments are stored in the local database. <!-- What's included in this PR? --> ### Drive-by changes - Sets `HYP_BASE_GASPAYMENTENFORCEMENT` in `run-locally` for the relayer, to test that it correctly indexes the IGP payment before submitting the message - A new config section (`sealevel`) is added to the relayer - The `MessageIndexer` trait is replaced with `SequenceIndexer<HyperlaneMessage>`, renaming `fetch_count_at_tip` to `sequence_at_tip`. `SequenceIndexer` is now common to both the message and igp indexers. - The `parse_addr` macro is modified so it can be reused when parsing the sealevel relayer address config too - `rust/utils/sealevel-test.bash` is included because I was using it to test locally, but I can remove it if the sealevel e2e test already does all the steps there @mattiecnvr - Performs a `try_into` conversion that can be removed once https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2610 is done ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2501 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? --> e2e tests but the pipeline is failing, likely fixed by https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/2602 --------- Co-authored-by: Trevor Porter <trkporter@ucdavis.edu> |
1 year ago |
Mattie Conover |
389029dafb
|
Agent Config Base Parsing (#2665)
### Description This is a big one for #2215... 1. Splits the parsing of configs from the config definitions to support both the old, new, and future parsers simultaneously. (We might want to rename it from parser to config format or something; not set on this name). 2. Implements the new config format without switching to it or enabling it. This means this PR does introduce dead code that is going to be used in the next PR. ### Drive-by changes - Deleted some unused (or single use) macros defined in hyperlane base - Updated the definition of the config parsing trait to simplify implementation - Added some more ergonomic methods of handling errors in config parsing - Removed any raw `unwrap()` I noticed since these cause difficult to debug errors in prod. - Added some additional validation to catch code mistakes in config path definitions ### Related issues - Progress on #2215 - Comes after #2658 ### Backward compatibility Yes ### Testing Manual (E2E only for now to make sure I did not break the old config format) |
1 year ago |
Daniel Savu |
51b81b84fa
|
fix(sealevel): data encoding in `set_return_data` (#2635)
### Description Suffixes `set_return_data` bytes with a non-zero byte to prevent a truncation bug ### Drive-by changes <!-- Are there any minor or drive-by changes also included? --> ### Related issues - Fixes https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2589 ### Backward compatibility <!-- Are these changes backward compatible? Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling? Yes/No --> ### Testing <!-- What kind of testing have these changes undergone? None/Manual/Unit Tests --> --------- Co-authored-by: Trevor Porter <trkporter@ucdavis.edu> |
1 year ago |
Daniel Savu |
326eced987
|
Revert "refactor(IndexMode): remove `IndexRange`… (#2562)" (#2655)
This reverts commit
|
1 year ago |
Mattie Conover |
8cbfd3cbc0
|
Support 64-byte txn ids (attempt 2) (#2612)
### Description Adds support to TxOutcome for 512-bit ids and to log meta to support Solana. Now that we have primitive types in our crate we were able to create a better solution than before which just stores the EVM 256bit hashes inside of the 512bit one with leading zeros rather than needing to over engineer an enum container for it. ### Drive-by changes - Removed some dead code - Improved primitive type support for 512bit types - Improved serialization support for 512bit types ### Related issues - Fixes #2252 - Replaces #2256 ### Backward compatibility _Are these changes backward compatible?_ Yes-ish, changes one of the internal database key strings. At standup we discussed the possibility of migrating the data and concluded that was a can of worms we did not want to open. _Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling?_ None ### Testing _What kind of testing have these changes undergone?_ Unit tests |
1 year ago |
Mattie Conover |
a5e1815746
|
Rust updates (#2619)
### Description Let this one slip a while. Updates our version of rust and as many packages as did not conflict with solana. I think we are going to need to figure something better out going forward with solana since if we have a couple more envs like this, it is going to make updates very hard. ### Drive-by changes None ### Related issues General Maintenance ### Backward compatibility Yes ### Testing Manual & Unit Tests |
1 year ago |
Mattie Conover |
9ed3a24902
|
Solana e2e tests (#2578)
### Description Adds support for testing solana with the e2e tests. This involves 1) Downloading the pre-built solana cli tools 2) Setting up the solana configuration 3) Downloading the pre-built solana programs we need (see https://github.com/hyperlane-xyz/solana-program-library/releases/) 4) The solana programs in the repo 5) Start the solana validator 6) Deploy the solana programs 7) Deploy a warp route 8) Initialize the multisig ism and validator announce 9) Initialize a transfer 10) Wait for the message to be delivered In addition these were "woven" in with the existing E2E test logic, so for instance we only run one new validator and the existing relayer was extended to support these additional chains. This will make it much easier later on to support testes between environments. ### Drive-by changes - Fix a bug in the relayer when trying to index the mailbox - Add support in the hyperlane sealevel CLI for custom solana config paths - Fix a linker error on linux causes by not specifying `no-entrypoint` - Cleaned up unnecessary `no-entrypoint` features in libraries - Minor refactor to how we run commands to avoid arg passing - Created an easy way to define tasks that run asyncly `as_task` - Split up main logic flow into a couple files for easier reading - Use mold linker to speed up builds (well, the linking part) - Removed support for `log_all` to simplify code pathways - Added context when a child process ends unexpectedly for easier debugging - Fixed a bug in the validator where it would infinitely retry to send an announcement on failure without waiting - Cleaned up solana configs - Fixed processes hanging on exit (very annoying when testing locally since you have to manually go kill them) - Added stderr logging to the hyperlane sealevel CLI subprocess calls ### Related issues Fixes #2415 ### Backward compatibility Yes ### Testing Manual |
1 year ago |
Daniel Savu |
127294decc
|
refactor(IndexMode): remove `IndexRange`, use default index mode per env (#2562)
### Description Removes the `index_mode` config field, default to whichever mode is currently supported by our existing envs. Doing this allows for safely removing runtime checks to see if the correct index mode was configured. Additional work is required to support multiple indexing modes per env. Check this discord thread for the full discussion: https://discord.com/channels/935678348330434570/961711527092682783/1133347733411987568 ### Drive-by changes - `IndexRange` is removed entirely and replaced by `RangeInclusive<u32>` - Moves `is_arbitrum_nitro` into a bigger existing `impl HyperlaneDomain` block for clarity ### Related issues This is part 1 of https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/2511 ### Backward compatibility Yes ### Testing Relies on existing e2e tests |
1 year ago |
Trevor Porter |
8c5983933b
|
Sealevel (#2404)
### Description Opening for that sweet sweet agent image ### Drive-by changes _Are there any minor or drive-by changes also included?_ ### Related issues - Fixes #[issue number here] ### Backward compatibility _Are these changes backward compatible?_ Yes No _Are there any infrastructure implications, e.g. changes that would prohibit deploying older commits using this infra tooling?_ None Yes ### Testing _What kind of testing have these changes undergone?_ None Manual Unit Tests --------- Co-authored-by: Steven Sloboda <steven@eclipse.builders> Co-authored-by: Nam Chu Hoai <nambrot@googlemail.com> Co-authored-by: Yorke Rhodes <yorke@hyperlane.xyz> Co-authored-by: J M Rossy <jm.rossy@gmail.com> Co-authored-by: Mattie Conover <git@mconover.dev> Co-authored-by: Asa Oines <asaoines@gmail.com> Co-authored-by: Sergei Patrikeev <serejke.best@gmail.com> Co-authored-by: Daniel Savu <23065004+daniel-savu@users.noreply.github.com> Co-authored-by: Kunal Arora <55632507+aroralanuk@users.noreply.github.com> Co-authored-by: yorhodes <yorkerhodesiv@gmail.com> Co-authored-by: Yorke Rhodes <yorke@useabacus.network> Co-authored-by: Yorke Rhodes <email@yorke.dev> Co-authored-by: Asa Oines <asaoines@Asas-MacBook-Pro.local> Co-authored-by: Kunal Arora <kuarora@ucsd.edu> Co-authored-by: Anett <44020788+anettrolikova@users.noreply.github.com> Co-authored-by: Yaqub Mahmoud <yaqub320@gmail.com> Co-authored-by: Alex <alex@alexbh.dev> |
1 year ago |