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