refactor(cast): generic cast run#14121
Merged
Merged
Conversation
bb2d324 to
3aa03f5
Compare
mablr
reviewed
Apr 6, 2026
Collaborator
mablr
left a comment
There was a problem hiding this comment.
Lgtm 👍
Merge conflicts to be resolved.
Collaborator
Author
|
on it |
3aa03f5 to
b9fdc02
Compare
zerosnacks
approved these changes
Apr 7, 2026
decofe
added a commit
that referenced
this pull request
Apr 9, 2026
The generic `FoundryEvmNetwork` refactor (PR #14121) changed `cast run` from using `AnyNetwork` to dispatching via `FEN::Network`. Non-Tempo chains use `EthEvmNetwork` whose `Network = Ethereum`, which cannot deserialize OP Stack deposit transactions (type 0x7e). When `cast run` fetches a full block from Base or Optimism, the block contains deposit transactions that `Ethereum`'s `TxEnvelope` can't parse, causing: `data did not match any variant of untagged enum BlockTransactions`. Fix: use `FoundryNetwork` for the RPC provider (which supports all tx types including OP deposits) while keeping the EVM factory dispatch unchanged. Also adds `UIfmt` and `UIfmtSignatureExt` impls for `FoundryTxEnvelope`. Co-authored-by: zerosnacks <95942363+zerosnacks@users.noreply.github.com> Amp-Thread-ID: https://ampcode.com/threads/T-019d7101-de26-7256-87eb-0f2365d1fc6c
decofe
added a commit
that referenced
this pull request
Apr 9, 2026
`cast run` on OP Stack chains (Base, Optimism) fails with: `data did not match any variant of untagged enum BlockTransactions` Root cause: the generic `FoundryEvmNetwork` refactor (PR #14121) changed `cast run` from using `AnyNetwork` to dispatching via `FEN::Network`. Non-Tempo chains use `EthEvmNetwork` whose `Network = Ethereum`, which cannot deserialize OP deposit transactions (type 0x7e). Fix: decouple the RPC provider network type from the EVM factory by making `run_with_provider` generic over both `FEN` (EVM factory) and `N` (provider network). The dispatch in `run()` now detects OP Stack chains early via `is_optimism()` and uses `FoundryNetwork` as the provider network, which supports all transaction types including OP deposits. Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
decofe
added a commit
that referenced
this pull request
Apr 13, 2026
- Add Vyper installation to test-isolate.yml flaky job (was missing, causing 'Found Vyper sources, but no compiler versions are available' since the flaky_testdata test was added in #14052) - Wildcard ambiguous selector names and gas values in flaky_osaka_can_run_p256_precompile snapshot (the OpenChain 4byte API returns non-deterministic ordering for colliding selectors, and gas values shifted after the generic cast run refactor in #14121) Co-Authored-By: zerosnacks <95942363+zerosnacks@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
Makes
cast rungeneric overFoundryEvmNetwork.Dependencies
block_envaccess -> trait methods #14119TryFrom<Result<RawCallResult>>onTraceResult#14122