Abstract
This is a follow up proposal from the OP-PIP-79.
The last proposal successfully upgraded all Entropy mainnet contracts but the one on Abstract.
Rationale
The v2.0 upgrade will introduce significant quality of life improvements for all Entropy users.
Description
Entropy version 2.0 introduces several developer experience upgrades around callbacks, including configurable gas limits and better error reporting. It also improves the event definition and simplifies the user-facing API.
Implementation
- Make sure you have node-js, forge and jq installed.
a. node-js: installnvm
from here. Install node-js 22 (nvm install 22; nvm use 22
)
b. forge: install it from here
c. jq: install it from here - Clone the
pyth-crosschain
repo (git clone
https://github.com/pyth-network/pyth-crosschain.git
). Go to thepyth-crosschain
directory and run the following command:pnpm i
- Get the on-chain implementation code digest by going to the
contract_manager
directory and runningnpx ts-node scripts/check_proposal.ts --cluster mainnet-beta --proposal <proposal id>
- Get the source code digest by going to the
target_chains/ethereum/contracts
directory angd runningpnpm exec truffle compile --all && cat build/contracts/EntropyUpgradable.json | jq -r .deployedBytecode | tr -d '\r\n' | cast keccak
. The expected hash is0x6ed1adf0838150b563fef366873dbdcf7bc8acb8d3d74bd904c23a4f4e943c62
- Check the hash digest from the on-chain implementation (from step 3) matches the hash digest from the source code (from step 4).