Skip to content

feat(bridge-withdrawer): sync logic#1165

Merged
noot merged 31 commits intomainfrom
itamarreif/bridge-withdrawer-sync
Jun 9, 2024
Merged

feat(bridge-withdrawer): sync logic#1165
noot merged 31 commits intomainfrom
itamarreif/bridge-withdrawer-sync

Conversation

@itamarreif
Copy link
Contributor

@itamarreif itamarreif commented Jun 8, 2024

Summary

This checks the last sequencer transaction made by the bridge account for the corresponding rollup block height in order to initialize the watcher's event stream from the right block

Background

The bridge withdrawer needs to know what the last finalized processed block was.

Changes

  • submitter startup will fetch the last finalized tx and parse the rollup block out of it
  • watcher gets the initial rollup block height to listen to from the submitter's startup

Testing

The sync is part of the startup sequence, which has existing tests already in place. This PR mounts the additional mock guards required by the sync process to ensure all the existing tests still work.

closes #1108

@itamarreif itamarreif self-assigned this Jun 8, 2024
Base automatically changed from itamarreif/bridge-withdrawer-startup to main June 8, 2024 18:51
@github-actions github-actions bot added proto pertaining to the Astria Protobuf spec sequencer pertaining to the astria-sequencer crate labels Jun 9, 2024
@itamarreif itamarreif marked this pull request as ready for review June 9, 2024 18:42
@itamarreif itamarreif requested review from a team as code owners June 9, 2024 18:42
@itamarreif itamarreif requested a review from SuperFluffy June 9, 2024 18:42
Copy link
Contributor

@noot noot left a comment

Choose a reason for hiding this comment

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

lgtm!

@noot noot enabled auto-merge June 9, 2024 19:40
@noot noot added this pull request to the merge queue Jun 9, 2024
Merged via the queue into main with commit 3d016b2 Jun 9, 2024
@noot noot deleted the itamarreif/bridge-withdrawer-sync branch June 9, 2024 19:51
steezeburger added a commit that referenced this pull request Jun 10, 2024
* main:
  fix: ignore RUSTSEC-2021-0139 (#1171)
  chore(sequencer-relayer)!: remove functionality to restrict relaying blocks to only those proposed by a given validator (#1168)
  chore(metrics): update `metric_name` macro to handle a collection of names (#1163)
  fix(bridge-withdrawer): skip linting generated contract code (#1172)
  fix(core, sequencer): prefix removal source non-refund ics20 packet (#1162)
  chore(docs): add sequencer-relayer doc to specs (#1126)
  feat(bridge-withdrawer): sync logic (#1165)
  chore(withdrawer): replace contracts with `astria-bridge-contracts` submodule (#1164)
  feat(sequencer)!: implement bridge sudo and withdrawer addresses (#1142)
  feat(sequencer): implement refund to rollup logic upon ics20 transfer refund (#1161)
  feat(bridge-withdrawer): bridge withdrawer startup (#1160)
  feat(core, proto)!: add bech32m addresses (#1124)
  feat(withdrawer): bridged ERC20 token withdrawals (#1149)
  feat(sequencer-relayer)!: add chain IDs for sequencer and Celestia to config env vars (#1063)
  test(bridge-withdrawer): add submitter tests (#1133)
  chore: bump penumbra deps (#1159)
  feat(sequencer): implement `bridge/account_last_tx_hash` abci query (#1158)
  fix(withdrawer): use block subscription in batcher; send to destination_chain_address (#1157)
  fix(withdrawer): update AstriaWithdrawer to check that withdrawal value is sufficient (#1148)
  chore(ci): build bridge withdrawer images (#1156)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bridging proto pertaining to the Astria Protobuf spec sequencer pertaining to the astria-sequencer crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bridge-withdrawer: Add sync logic

2 participants