Skip to content

feat(health-check): probe EVM chains by chain id and a recent finalized transaction - #3962

Closed
haiyuechen-nearone wants to merge 1 commit into
3764-foreign-chain-health-hybrid-starknetfrom
3764-foreign-chain-health-hybrid-evm
Closed

feat(health-check): probe EVM chains by chain id and a recent finalized transaction#3962
haiyuechen-nearone wants to merge 1 commit into
3764-foreign-chain-health-hybrid-starknetfrom
3764-foreign-chain-health-hybrid-evm

Conversation

@haiyuechen-nearone

@haiyuechen-nearone haiyuechen-nearone commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Part of #3764; rationale: #3969. Stacked on #3932, merge bottom-up:

  1. feat: probe Starknet by chain id and a recent transaction #3932 — Starknet: chain id + a recent L1-accepted tx
  2. feat(health-check): probe EVM chains by chain id and a recent finalized transaction #3962 (this PR) — 6 EVM chains: eth_chainId + a recent finalized tx
  3. feat(health-check): probe Bitcoin by genesis hash and a recent transaction #3963 — Bitcoin: genesis hash + a recent tx
  4. feat(health-check): probe Aptos by ledger chain id and a recent transaction #3964 — Aptos: ledger chain id + a recent tx

Replaces the six EVM chains' pinned golden txs with the identity probe: verify eth_chainId, then inspect a real tx from a block 10 below the finalized head (walks back past empty blocks).

Expected chain ids come from config (foreign_chain_health_check.identities), no built-ins — well-known values are in the config-tester README.

@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-starknet branch from 740fa83 to 40098ed Compare July 24, 2026 12:32
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-evm branch from 79ee813 to 3a83749 Compare July 24, 2026 12:32
@haiyuechen-nearone haiyuechen-nearone changed the title feat(health-check): EVM chain-id + dynamic-tx probe (Option B prototype) feat(health-check): probe EVM chains by chain id and a recent finalized transaction Jul 24, 2026
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-starknet branch from 40098ed to a79a492 Compare July 24, 2026 14:23
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-evm branch 2 times, most recently from f9b5906 to f3da245 Compare July 27, 2026 10:31
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-starknet branch 2 times, most recently from dc7ac79 to 26017c3 Compare July 27, 2026 11:02
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-evm branch 2 times, most recently from 798424c to 2cbd463 Compare July 27, 2026 11:19
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-starknet branch 14 times, most recently from 0d17ad2 to c38ac5d Compare July 27, 2026 12:50
…ed transaction

Extend the identity-based probe to the 6 EVM chains (base, bnb, arbitrum,
polygon, hyper_evm, abstract): verify eth_chainId against the configured expected
identity, then run the inspector over a transaction from a block 10 below the
finalized head, walking back past empty blocks.

The EVM golden vectors are deleted: expected chain ids come from configuration
like the other identity chains (well-known values in the config-tester README).
@haiyuechen-nearone
haiyuechen-nearone force-pushed the 3764-foreign-chain-health-hybrid-evm branch from 2cbd463 to 7f48caf Compare July 27, 2026 13:33
@haiyuechen-nearone

Copy link
Copy Markdown
Contributor Author

Superseded by the #4003 stack, which reimplements chain-identity probing config-first: #4017 (config field) and #4013 (probe machinery, Starknet-first). Reopen if the per-chain hybrid approach is revived.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant