Skip to content

fix: handle undecodable MultiSend data in event processing#306

Open
falvaradorodriguez wants to merge 1 commit into
mainfrom
fix/handle-undecodable-multisend-event-data
Open

fix: handle undecodable MultiSend data in event processing#306
falvaradorodriguez wants to merge 1 commit into
mainfrom
fix/handle-undecodable-multisend-event-data

Conversation

@falvaradorodriguez

Copy link
Copy Markdown
Contributor

get_contracts_from_data assumed the calldata of every EXECUTED_MULTISIG_TRANSACTION was a multiSend call. MultiSend.from_transaction_data only catches ValueError, so when the data starts with the multiSend selector (0x8d80ff0a) but its body isn't a valid argument (truncated, corrupt, or a selector collision), eth_abi raised DecodingError/OverflowError and crashed the queue consumer (InsufficientDataBytes in staging). Now we catch (ValueError, DecodingError, ArithmeticError), log a warning and return an empty set; the event is still processed via its to address.

@falvaradorodriguez falvaradorodriguez marked this pull request as ready for review June 17, 2026 09:36
@falvaradorodriguez falvaradorodriguez requested a review from a team as a code owner June 17, 2026 09:36
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