Skip to content

Commit

Permalink
wip: ASR
Browse files Browse the repository at this point in the history
  • Loading branch information
wildmolasses committed Dec 12, 2024
1 parent 65e1987 commit ebd1aa5
Showing 1 changed file with 15 additions and 11 deletions.
26 changes: 15 additions & 11 deletions specs/fault-proof/stage-one/anchor-state-registry.md
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ TODO: is this true?
### aASR-002: If a larger dispute game bug is found, all games will be retired before the first incorrect game's dispute game finality delay period has passed

We assume that a larger bug affecting many games will be noticed via monitoring
([aDGF-002](#adgf-002-games-created-by-the-disputegamefactory-will-be-monitored)) and will be expired within the dispute
([aDGF-002](#adgf-002-games-created-by-the-disputegamefactory-will-be-monitored)) and will be retired within the dispute
game finality delay period.

TODO: is this true?
Expand Down Expand Up @@ -281,11 +281,11 @@ implying lost funds and lost confidence.

#### Dependencies

- [aFDG-001](#afdg-001-fault-dispute-games-correctly-report-their-properties)
- [aFDG-001](#afdg-001-fault-dispute-games-correctly-report-certain-properties)
- [aDGF-001](#adgf-001-dispute-game-factory-correctly-identifies-the-games-it-created)
- [aDGF-002](#adgf-002-games-created-by-the-disputegamefactory-will-be-monitored)
- [aASR-001](#aasr-001-incorrectly-resolving-games-will-be-blacklisted-within-the-dispute-game-finality-delay-period)
- [aASR-002](#aasr-002-larger-bugs-in-dispute-game-mechanics-will-be-expired-within-the-dispute-game-finality-delay-period)
- [aASR-002](#aasr-002-if-a-larger-dispute-game-bug-is-found-all-games-will-be-retired-before-the-first-incorrect-games-dispute-game-finality-delay-period-has-passed)
- [aASR-003](#aasr-003-the-anchorstateregistry-will-be-correctly-initialized-at-deployment)
- [aSC-001](#asc-001-superchainconfig-correctly-reports-its-guardian-address)

Expand All @@ -299,11 +299,11 @@ If this invariant is broken, withdrawals can be frozen for a long period of time

#### Dependencies

- [aFDG-001](#afdg-001-fault-dispute-games-correctly-report-their-properties)
- [aFDG-001](#afdg-001-fault-dispute-games-correctly-report-certain-properties)
- [aDGF-001](#adgf-001-dispute-game-factory-correctly-identifies-the-games-it-created)
- [aDGF-002](#adgf-002-games-created-by-the-disputegamefactory-will-be-monitored)
- [aASR-001](#aasr-001-incorrectly-resolving-games-will-be-blacklisted-within-the-dispute-game-finality-delay-period)
- [aASR-002](#aasr-002-larger-bugs-in-dispute-game-mechanics-will-be-expired-within-the-dispute-game-finality-delay-period)
- [aASR-002](#aasr-002-if-a-larger-dispute-game-bug-is-found-all-games-will-be-retired-before-the-first-incorrect-games-dispute-game-finality-delay-period-has-passed)
- [aASR-003](#aasr-003-the-anchorstateregistry-will-be-correctly-initialized-at-deployment)
- [aSC-001](#asc-001-superchainconfig-correctly-reports-its-guardian-address)
- [iASR-001](#iasr-001-games-that-make-correct-claims-about-l2-state-can-be-distinguished-from-games-that-do-not)
Expand All @@ -312,19 +312,22 @@ If this invariant is broken, withdrawals can be frozen for a long period of time

### iASR-003: Only "truly" **valid games** will be represented as **valid games**.

When asked for a **valid game** by its dependents, the contract will only serve **valid games** that "truly" resolved in
favor of defender.
When asked for a **valid game** by its dependents, the AnchorStateRegistry will only serve **valid games** representing correct L2 state claims.

#### Impact

**Severity: High**

If this invariant is broken, an L2 state that's different from what dependents can be tricked into finalizing
withdrawals based on incorrect state roots, causing loss of funds.
If this invariant is broken, the L1 will have an inaccurate view of L2 state. The OptimismPortal can be tricked into finalizing
withdrawals based on incorrect state roots, causing loss of funds. Other dependents would also be affected.

#### Dependencies

- TODO
- [iASR-001](#iasr-001-games-that-make-correct-claims-about-l2-state-can-be-distinguished-from-games-that-do-not)
- [aASR-001](#aasr-001-incorrectly-resolving-games-will-be-blacklisted-within-the-dispute-game-finality-delay-period)
- [aASR-002](#aasr-002-if-a-larger-dispute-game-bug-is-found-all-games-will-be-retired-before-the-first-incorrect-games-dispute-game-finality-delay-period-has-passed)
- [aASR-003](#aasr-003-the-anchorstateregistry-will-be-correctly-initialized-at-deployment)
- [aSC-001](#asc-001-superchainconfig-correctly-reports-its-guardian-address)

### iASR-004: The anchor game was created recently, within some bounded time period.

Expand All @@ -340,7 +343,8 @@ and incorrect game resolution.

#### Dependencies

- TODO
- [aASR-003](#aasr-003-the-anchorstateregistry-will-be-correctly-initialized-at-deployment)
- [aFDG-002](#afdg-002-fault-dispute-games-with-correct-claims-resolve-correctly-at-some-regular-rate)

### iASR-005: The anchor game is a game whose claim is correct.

Expand Down

0 comments on commit ebd1aa5

Please sign in to comment.