[PASSED] OP-PIP-14: Upgrade Entropy Contracts (Mainnet)


Upgrade the current Pyth oracle contract on all mainnets (except Blast) to add a fee manager role that simplifies operations for randomness providers by letting their keeper wallet withdraw accrued fees.

This proposal is the mainnet version of PIP 12 [PASSED] OP-PIP-12: Upgrade Entropy Contracts (Testnet)


Running an Entropy keeper should be easy. At the moment, there is a significant pain point in maintaining the wallet balance for the keeper, because the keeper isn’t authorized to withdraw fees from the contract to recoup it’s gas expenses.


This proposal updates the Entropy contract to add a fee manager role. The fee manager is authorized by a provider to (1) set its fee, and (2) withdraw accrued fees. Providers can set the fee manager to their keeper wallet, which will enable their keeper service to better manage its gas.

Proposal: 64Dok3c9jePoNudnhekSpNt7DqF1GzrLU81rfW4eKZWC

Code changes:

branch: main


  1. Make sure you node-js and forge installed.
    a. node-js: install nvm from here
    b. forge: install it from here
  2. Clone pyth-crosschain repo
  3. Checkout the proposal code branch
  4. Run the following command from the root dir: npm ci && npx lerna run build
  5. Get the on-chain implementation code digest by going to the contract_manager directory and running this command: npx ts-node scripts/check_proposal.ts --cluster mainnet-beta --proposal <proposal id>
  6. Get the source code digest by going to the target_chains/ethereum/contracts and running npx truffle compile --all && cat build/contracts/EntropyUpgradable.json | jq -r .deployedBytecode | tr -d '\n' | cast keccak
  7. Match the of the on-chain digest with the source code digest.
  8. Both digests should also match 0x46ffabe0d140b0447deb465a774363eeb8c819ef1d9add897db30e099441952b which is the digest from the corresponding testnet proposal [PASSED] OP-PIP-12: Upgrade Entropy Contracts (Testnet)

Henlo Pythians

It was verified and signed on my end

Let’s make Entropy even better so we reach the skies


I’m here for it fam. Let the world know about Pyth Entropy as a new solution for on-chain RNG. Thanks again Kemar