Skip to main content

State Enum

State Details

Querying State

State Transitions

From NOT_DEPLOYED

  • → NEW_DEPLOYMENT: Deploy via BattleChainDeployer

From NEW_DEPLOYMENT

  • → ATTACK_REQUESTED: Call requestUnderAttack()
  • → PRODUCTION: Call goToProduction()

From ATTACK_REQUESTED

  • → UNDER_ATTACK: DAO calls approveAttack()
  • → NOT_DEPLOYED: DAO calls rejectAttackRequest()
  • → PRODUCTION: DAO calls instantPromote() or auto after 14 days

From UNDER_ATTACK

  • → PROMOTION_REQUESTED: Attack moderator calls promote()
  • → CORRUPTED: Attack moderator calls markCorrupted()
  • → PRODUCTION: DAO calls instantPromote()

From PROMOTION_REQUESTED

  • → PRODUCTION: After 3 days automatically
  • → UNDER_ATTACK: Attack moderator calls cancelPromotion()
  • → CORRUPTED: Attack moderator calls markCorrupted()
  • → PRODUCTION: DAO calls instantPromote()

From PRODUCTION

None (terminal state)

From CORRUPTED

None (terminal state)

Time Constants