Skip to content

Add L1 Proxy Contract with ability to pause during upgrade #707

@karlfloersch

Description

@karlfloersch

Is your feature request related to a problem? Please describe.
We need to pause all interactions with our L1 contracts during an upgrade. If we don't then we don't know what crazy interactions might happen if someone sent a transaction mid deploy.

Describe the solution you'd like
Implement a ChugSplashProxy which, before executing any transactions, checks to see if a deployment is currently under-way. This should be called in the fallback function before any interactions with the contract. Also, to enable folks to eth_call even during an upgrade, we can use the following logic:

function() {
  if (isUpgradeHappening()) {
    require(msg.sender == 0, "Only eth_call is allowed during an upgrade!");
  }
}

Blockers
#703

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions