Remove redundant declaration of address names#1695
Conversation
🦋 Changeset detectedLatest commit: 6f0fcf2 The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codecov Report
@@ Coverage Diff @@
## regenesis/0.5.0 #1695 +/- ##
================================================
Coverage 72.64% 72.64%
================================================
Files 69 69
Lines 2274 2274
Branches 337 337
================================================
Hits 1652 1652
Misses 622 622
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report at Codecov.
|
maurelian
left a comment
There was a problem hiding this comment.
I've found some places I've missed applying the object member access, so this is not quite ready, but appreciate the quick reviews coming in. :)
d03e032 to
cfc8b9b
Compare
88312e2 to
4835794
Compare
|
Looking good, I'd rebase into one commit and should be good to go after approval |
2a0349b to
96bf7b4
Compare
be42c24 to
64b53f4
Compare
smartcontracts
left a comment
There was a problem hiding this comment.
Also note that there are other places in this repository where these names are being used. However, that could make a good first issue or two so I'd recommend not updating those values in this PR.
0bc574d to
07c5cb5
Compare
ab6cace to
f1af0af
Compare
smartcontracts
left a comment
There was a problem hiding this comment.
LGTM, nice cleanup.
This commit adds an addressNames object, which should be used both for names in the address manager, and naming deployment artifacts. fix(contracts): Remove unused queue container test code feat(contracts): Split up managed and unmanaged names refactor(contracts): Move address names into a single nested object refactor(contracts): Make address keys similar to values chore: add changeset docs(contracts): Add a docstring to deployAndPostDeploy refactor(contracts): Remove unnecessary contract name If the Address Manager's name is the same as the contract artifact we don't need specify the contract name argument.
f1af0af to
6f0fcf2
Compare
## Overview Adds a path for finalizing L2 blocks, based off of the L1 block they were derived from. To accomplish this: 1. The derivation pipeline now attaches the L1 block that the L2 block was derived from, within `OpAttributesWithParent`. 2. The DA watcher actor now watches a stream of finalized L1 blocks, polled every 1m. 3. The engine actor now holds onto a map of `l1_block_number => highest_l2_block_in_epoch`, saturated when it receives attributes from the derivation actor. - When a new finalized L1 block is observed by the engine actor, it will find the highest L2 block whose batch data is contained within the finalized L1 chain, and finalize it (if it knows of any.) This approach is different than suggested by the tickets, but results in a more slim outcome that takes advantage of existing actors. ### Periphery changes - Some refactoring of the `OpAttributesWithParent` type. - The sync start algorithm now stops safe block traversal at the finalized head, to ensure it never assigns a safe block past it. - The `L1WatcherRpc` now uses a custom `BlockStream`, since alloy's `watch_blocks` stream doesn't dedup nor allow for observing anything other than head block updates. ### Result Finalized blocks are correctly streaming in 😄 <img width="1228" alt="Screenshot 2025-05-24 at 5 09 01 PM" src="https://github.com/user-attachments/assets/609184a5-35b8-4b04-a124-eeece8ef53e4" /> ### Meta closes #1693 closes #1694 closes #1695 closes #1696 closes #1698
## Overview Adds a path for finalizing L2 blocks, based off of the L1 block they were derived from. To accomplish this: 1. The derivation pipeline now attaches the L1 block that the L2 block was derived from, within `OpAttributesWithParent`. 2. The DA watcher actor now watches a stream of finalized L1 blocks, polled every 1m. 3. The engine actor now holds onto a map of `l1_block_number => highest_l2_block_in_epoch`, saturated when it receives attributes from the derivation actor. - When a new finalized L1 block is observed by the engine actor, it will find the highest L2 block whose batch data is contained within the finalized L1 chain, and finalize it (if it knows of any.) This approach is different than suggested by the tickets, but results in a more slim outcome that takes advantage of existing actors. ### Periphery changes - Some refactoring of the `OpAttributesWithParent` type. - The sync start algorithm now stops safe block traversal at the finalized head, to ensure it never assigns a safe block past it. - The `L1WatcherRpc` now uses a custom `BlockStream`, since alloy's `watch_blocks` stream doesn't dedup nor allow for observing anything other than head block updates. ### Result Finalized blocks are correctly streaming in 😄 <img width="1228" alt="Screenshot 2025-05-24 at 5 09 01 PM" src="https://github.com/user-attachments/assets/609184a5-35b8-4b04-a124-eeece8ef53e4" /> ### Meta closes #1693 closes #1694 closes #1695 closes #1696 closes #1698
Description
The strings used to resolve system contracts in the Address Manager must be correct, but they are declared independently in many places.
This PR defines an exported object to act as a dictionary of correct names.