Skip to content
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

Update PRESIGNED-PAUSE.md with the GAP disclaimer. #347

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Ethnical
Copy link
Contributor

@Ethnical Ethnical commented Oct 17, 2024

Description
This PR include the informations in case an upgrade cause the changes to break the PSPs.

In the future, this will be less the case to happen since we will make the DGM proxify.
As part of the design review for upgrading the DGM here (ethereum-optimism/design-docs#89)

Tests

Additional context

Metadata

@Ethnical Ethnical changed the title [WIP] add gap information to superchains-ops + doctoc Update PRESIGNED-PAUSE.md with the GAP disclaimer. Oct 17, 2024
@Ethnical Ethnical marked this pull request as ready for review October 17, 2024 13:09
@Ethnical Ethnical requested a review from a team as a code owner October 17, 2024 13:09
PRESIGNED-PAUSE.md Outdated Show resolved Hide resolved
PRESIGNED-PAUSE.md Outdated Show resolved Hide resolved
Comment on lines +48 to +56
This means that, if we are upgrading core components of the system. It can break the PSPs coverage, thus we need to ensure before the upgrade that the PSPs coverage will not be broken.
In the case there are broken changes, we need to blindly simulate the PSPs with the **new changes** and presign the new PSPs with the **new changes**.
This will allow us to have the PSPs coverage during the upgrade and after the upgrade with the new components.
We need to keep the PSPs before the upgrade and after the upgrade.

> [!WARNING]
> This will require to making some **overrides** in _superchains-ops_ tasks to simulate successfully with the new changes. We already had to do this for the PSPs in the [task 017](https://github.com/ethereum-optimism/superchain-ops/blob/main/tasks/eth/017-presigned-pause/PresignPauseFromJson.s.sol)

This is worth noting, if there is another entity that depends on the PSPs, we need to share these before the upgrade occurs.
Copy link
Contributor

Choose a reason for hiding this comment

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

Phrasing nits. I also removed "We need to keep the PSPs before the upgrade and after the upgrade." because I think we should expand on that in a new section that documents the process (two vaults, one is temporary, etc)

Suggested change
This means that, if we are upgrading core components of the system. It can break the PSPs coverage, thus we need to ensure before the upgrade that the PSPs coverage will not be broken.
In the case there are broken changes, we need to blindly simulate the PSPs with the **new changes** and presign the new PSPs with the **new changes**.
This will allow us to have the PSPs coverage during the upgrade and after the upgrade with the new components.
We need to keep the PSPs before the upgrade and after the upgrade.
> [!WARNING]
> This will require to making some **overrides** in _superchains-ops_ tasks to simulate successfully with the new changes. We already had to do this for the PSPs in the [task 017](https://github.com/ethereum-optimism/superchain-ops/blob/main/tasks/eth/017-presigned-pause/PresignPauseFromJson.s.sol)
This is worth noting, if there is another entity that depends on the PSPs, we need to share these before the upgrade occurs.
Upgrades to certain components of the system can invalidate existing PSPs and cause them to no longer work, thus we need to ensure before the upgrade that PSPs coverage continues without a gap.
In this case of breaking changes, we need to simulate the PSPs against the **new changes** and presign the new PSPs against these **new changes**.
This will allow us to have continuous PSP coverage before, during, and after the upgrade.
> [!WARNING]
> This will require to making some **overrides** in _superchains-ops_ tasks to simulate successfully with the new changes. We already had to do this for the PSPs in the [task 017](https://github.com/ethereum-optimism/superchain-ops/blob/main/tasks/eth/017-presigned-pause/PresignPauseFromJson.s.sol)
Additionally, if there is another entity that depends on the PSPs, we need to share these before the upgrade occurs.

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.

2 participants