Skip to content

Conversation

@anajuliabit
Copy link
Contributor

@anajuliabit anajuliabit commented Jun 20, 2025

This PR replaces the Multicall3 with Safe MultiSend v1.3.0. Is the same contract safe uses for batch transaction, this is how it shows in the UI

Screenshot 2025-06-20 at 14 56 07

https://etherscan.io/address/0x40a2accbd92bca938b02010e17a5b8929b49130d#code

@ElliotFriedman ElliotFriedman requested a review from Copilot June 21, 2025 21:41
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR replaces the legacy Multicall3 contract with Safe MultiSend v1.3.0 to support batch transactions using an updated bytecode and calldata encoding strategy. Key changes include:

  • Updating the constant in Constants.sol from MULTICALL_BYTECODE to MULTISEND_BYTECODE.
  • Modifying the proposal contracts (MultisigProposal.sol and GovernorBravoProposal.sol) to generate and verify calldata for the MultiSend contract.
  • Adjusting tests in MultisigProposal.t.sol to reflect the new MultiSend encoding and removing unused code constructs.

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
utils/Constants.sol Updated constant definition to use the Safe MultiSend bytecode.
test/MultisigProposal.t.sol Revised test assertions and removed unused struct definitions.
src/proposals/MultisigProposal.sol Refactored calldata generation to use the MultiSend encoding.
src/proposals/GovernorBravoProposal.sol Minor refactoring for import ordering and simulation updates.
Comments suppressed due to low confidence (1)

test/MultisigProposal.t.sol:6

  • [nitpick] The removal of the unused 'Call3Value' struct improves maintainability; ensure similar unused code is cleaned up elsewhere.
import {Addresses} from "@addresses/Addresses.sol";

@ElliotFriedman ElliotFriedman merged commit 0545657 into solidity-labs-io:main Jun 21, 2025
3 checks passed
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.

2 participants