Skip to content

Incorrect order of Transaction History during programmatic tx executions #6092

@AdvayAgrawal

Description

@AdvayAgrawal

Bug description

On executing safe transactions directly using contract functions rather than the UI, probably because a bunch of transactions were executed at the same time, the transaction history shows me the data which isnt ordered correctly by nonce.

Environment

  • Browser: Brave
  • Wallet: MetaMask
  • Chain: BSC mainnet

Steps to reproduce

  1. Use a script to execute multiple transactions together
function executeAirdrops() external {
        string memory json = vm.readFile("script/outputs/txHashes.json");
        string[] memory files = json.readStringArray(".files");
        ISafe safe = ISafe(receiver_multisig);

        vm.startBroadcast();

        for (uint256 i = 0; i < files.length; i++) {
            .
            .
            .
            safe.execTransaction(
                multiSendContract,
                0,
                multiSigCalldata,
                Enum.Operation.DelegateCall,
                0,
                0,
                0,
                address(0),
                payable(address(0)),
                mergedSignature
            );
        }

        vm.stopBroadcast();
    }
  1. Run the script using foundry (forge script)
  2. After successful execution through script, Visit the history tab on safe UI, to see the transactions.

Expected result

All transactions visible, ordered by nonce

Obtained result

All transactions are visible, but not ordered.

Screenshots

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions