-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sync Service Tx Batch Subscription, Parsing, and L2 Submission #155
Conversation
…sor vs listener, removing old event handling code that will not be used
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall this looks great to me! The logic seems very solid and flexible for when we finalize the contracts. The biggest things I noticed were things around slightly confusing naming. The main thing is the disambiguation between the L1ToL2Queue and L1ToL2Transactions as they're currently named.
That said, exciting! This is looking good and I'm excited to take a look at the Geth changes around timestamp!
packages/rollup-core/src/app/l1-to-l2-transaction-batch-listener-submitter.ts
Outdated
Show resolved
Hide resolved
packages/rollup-contracts/contracts/testing-contracts/L1ToL2TransactionEvents.sol
Outdated
Show resolved
Hide resolved
packages/rollup-core/src/app/l1-to-l2-event-handling/l1-transaction-batch-processor.ts
Outdated
Show resolved
Hide resolved
packages/rollup-core/test/app/l1-to-l2-transaction-batch-processor.spec.ts
Outdated
Show resolved
Hide resolved
packages/rollup-core/test/app/l1-to-l2-transaction-batch-processor.spec.ts
Outdated
Show resolved
Hide resolved
… BlockBatches being a collection of all the batches in a block
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!!! Double approve!
Merrrrrrrrge!
rollupTx | ||
).should.eq(true, 'tx mismatch') | ||
rollupTxsEqual( | ||
listener.receivedBlockBatches[0].batches[1][0], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice ok so this is called a BlockBatch
and now we have each normal batch just called batch? ok that works & sounds good!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep. BlockBatches
is the type. Weird to be plural, I know, but indicates that it contains all the batches from a block.
@@ -0,0 +1 @@ | |||
export * from './rollup-transaction-synchronizer' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice
* Separates storage from SCC and CTC (#151) * First pass version * More minor tweaks for tests to pass * Add authentication * Minor config updates * Fix lint error * Fix naming changes per review * Enable Deployer Whitelist (#119) * first pass, test runner updated * add ability to only validate flag, test passes * all tests passing * clean up console.logs * enforce gas refund preservation * more cleanup/import removal * whitelisted -> allowed * first pass, test runner updated * add ability to only validate flag, test passes * all tests passing * clean up console.logs * enforce gas refund preservation * more cleanup/import removal * whitelisted -> allowed * remove whitespace * Restrict StateTransitionerFactory (#140) * added msg sender check * add create test * cleanup * add param * add addressmanager.address param * CTC Chain Monotonicity Fixes (#93) * [wip] Fix block time logic * some sad path and happy tests passing * more progress * first pass sad cases tested * cleanup, adding empty tests * more reversion tests * rename shouldstartat} * add final couple tests * enable more tests * cleanup * remove .only * textual cleanup * make queue length public * improve structure, comments * update deploy config * address nits Co-authored-by: Karl Floersch <karl@karlfloersch.com> * fix declarations, lint (#152) * Adds river's new Merkle tree implementation, with some cleanup (#148) * Reverts an accidental breaking merge * Added new merkle tree impl * add comments * Final cleanups and merge Co-authored-by: Ben Jones <ben@pseudonym.party> * Fix run gas Lower Bound (#94) * added the check * add test * lower OVM TX size for Kovan * re-remove gas check * update gas vals slightly * lint * lint * Merge master into freeze integration branch (#153) * update solidity version to ^0.7.0 (#122) * update solc version to ^0.7.0 * interfaces back to solidity >0.6.0 <0.8.0 * update solc to 0.7.6 * back to 0.7.4 * upgrade to 0.7.6, fix EXTCODESIZE check * versions >0.5.0 <0.8.0 for xdomain msgers * ctc: disable appendQueueBatch (#150) * ctc: disable appendSequencerBatch * typo: fix * re-enable verifyQueueTransaction test: * add explicit test for verifying queue elements against either append Co-authored-by: Ben Jones <ben@pseudonym.party> * fix up test * remove .only Co-authored-by: Alina <alina@optimism.io> Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com> * add check, simple test, update deploy (#154) * go back to first name (#155) * lint * fix js number error * add error logging to help debug deploy * [code freeze] Fix deploy script (#156) * fix deploy script * add block time config * ensure value is integer * lint * remove console logs from deploy * Moves gas check to applyTransaction (#161) * move to OVM_ST, pass test * remove old test because functionality moved * linting * remove leaf hasing * use safe EXEMRG wrapper (#162) * use safeREQUIRE * add owner getter * relayer: add to config (#160) * relayer: add to config * lint: fix * Fix minor error in test config Co-authored-by: Kelvin Fichter <kelvinfichter@gmail.com> Co-authored-by: ben-chain <ben@pseudonym.party> Co-authored-by: Alina <alina@optimism.io> Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com> Co-authored-by: Kevin Ho <kevinjho1996@gmail.com>
…chee Add lychee information to meta/linting.md
Description
Creates micro-services for tx batch subscription, parsing, and L2 node submission
Also adds configurable confirmation delay on Block / Event subscribers.
Metadata
Fixes
Contributing Agreement