[PASSED] OP-PIP-22: Undelegate PGAS to unready validators, delegate PGAS to new ones

Abstract

This proposals aims to deactivate some Pythnet validators that were added in OP-PIP-20.
It also seeks to delegate 100,000 PGAS to 2 new Pythnet validators.

Rationale

Some of the validators added in OP-PIP-20, were unready to start validating right away, causing network issues such as skipped slots on Pythnet. We are looking to deactivate such validators.

Additionally, this proposal delegates Pythnet stake to 2 new publisher-associated validators.

Description

Pythnet, Pyth’s appchain, is governed by the Pythian Council, which manages stake accounts and validator roles.
Publishers having their own dedicated validator is important because it further enhance Pythnet reliability while increasing decentralization.

Implementation Plan

Proposal id: Pyth Network

  • Check each of the stakePubkey’s being deactivated is an actual stake account by finding it in the list returned by solana stakes -u https://pythnet.rpcpool.com
  • Verify each CreateWithSeed instruction sends 100,000,000,000,000 lamports (100,000 PGAS)
  • Verify each Initialize instruction sets the Pythian Council (DgpbK8SiypiUHBkBTAunMnwRWF3McGGR4iKxTrTfTXq4) as authorized withdrawer and staker, and stakePubkey matches newAccountPubkey in CreateWithSeedInstructions
  • Verify stakePubkey in each Delegate instruction matches newAccountPubkey in CreateWithSeedInstructions instruction