Skip to content

Replace Hardhat ops runtime and local fork with standalone CLI and Anvil - #2994

Closed
clement-ux wants to merge 1 commit into
chore/cleanup-hardhat-remnantsfrom
chore/standalone-ops-and-anvil
Closed

Replace Hardhat ops runtime and local fork with standalone CLI and Anvil#2994
clement-ux wants to merge 1 commit into
chore/cleanup-hardhat-remnantsfrom
chore/standalone-ops-and-anvil

Conversation

@clement-ux

Copy link
Copy Markdown
Collaborator

Stack

Summary

  • add a standalone pnpm ops CLI preserving all 75 operational commands, parameters, signer modes, deployment lookups, and Foundry artifact loading
  • make Anvil the canonical local/fork node for mainnet, Arbitrum, Base, Sonic, Plume, Hoodi, and HyperEVM
  • connect Brownie to external Anvil networks and migrate impersonation, balance, and code mutation RPCs to anvil_*
  • add a Safe batch comparator that requires identical chainId, to, value, and data while ignoring gas and metadata
  • retain the old node only as the temporary A/B oracle for the follow-up removal PR
  • run standalone ops, Brownie bridge, typecheck, and Anvil tests in CI

Verification

  • pnpm test:tasks — 38 passing
  • pnpm test:brownie — 4 passing
  • pnpm test:anvil — 3 passing
  • pnpm test:scripts — 66 passing
  • pnpm test:layouts — 11 passing
  • pnpm typecheck
  • pnpm lint:js
  • pnpm lint:ts
  • pnpm prettier:check
  • forge build contracts/ -j 1
  • real Brownie A/B smoke against both local engines: Safe payloads matched on chainId, to, value, and data

Full Foundry unit compilation is left to CI because the monolithic local build exceeds the available memory; the partitioned production build passed.

@clement-ux

Copy link
Copy Markdown
Collaborator Author

Superseded by #2998 and #2999. The standalone ops CLI and the Anvil local-node migration are now separate reviewable steps instead of one combined change. The replacement stack preserves the intended final tree and has passing CI, so this PR is no longer needed.

@clement-ux clement-ux closed this Sep 1, 2026
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