astriaorg / astria

A monorepo containing all the custom components of the Astria network, a decentralized system that replaces traditional sequencers, offering a shared, permissionless sequencer network.
https://www.astria.org/
Apache License 2.0
111 stars 74 forks source link

Add traceability to rollup deposit source #1402

Closed joroshiba closed 2 days ago

joroshiba commented 3 weeks ago

Currently the deposit events created have no information about deposit source, this poses an issue for tracing if your deposit has landed without simply monitoring the account balance. It additionally creates an issue in the EVM where all deposit txs of the same value to the same account for the same asset create the same tx hash, which is again subpar for monitoring.

In order to fix this we should propogate the tx hash source through the deposit, similar to how on rollup withdrawals we track the withdrawal event id.

To do this we need to update the proto Deposit to include a string source_transaction_hash field, as well as updatess to the astria-core types and filling in during deposit creation.

After this is done as a follow up changes should be made to astria-geth to consume the new information as a part of the deposit tx.

┆Issue Number: ENG-744

ethanoroshiba commented 2 weeks ago

We should also implement some sort of source transaction index as well, since two deposits from two different actions within the same transaction will have the same source_transaction_hash.