# \[PASSED\] OP-PIP-80: Entropy v2 Mainnet Upgrade (Abstract)

**URL:** <https://forum.pyth.network/t/passed-op-pip-80-entropy-v2-mainnet-upgrade-abstract/2167>\
**Category:** Proposals\
**Tags:** operational-pip\
**Created:** [July 15, 2025, 7:27am UTC](https://forum.pyth.network/t/passed-op-pip-80-entropy-v2-mainnet-upgrade-abstract/2167 "2025-07-15T07:27:11Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![KemarTiti](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.pyth.network/kemartiti/32/5_2.png) [@KemarTiti](https://forum.pyth.network/u/KemarTiti)\
**Post date:** [July 15, 2025, 7:27am UTC](https://forum.pyth.network/t/passed-op-pip-80-entropy-v2-mainnet-upgrade-abstract/2167/1 "2025-07-15T07:27:11Z")

</div>

**Abstract**

This is a follow up proposal from the [OP-PIP-79](https://forum.pyth.network/t/passed-op-pip-79-entropy-v2-mainnet-upgrade/2164).

The last proposal successfully upgraded all Entropy mainnet contracts but the one on [Abstract](https://abscan.org/address/0x5a4a369F4db5df2054994AF031b7b23949b98c0e).

**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**

Proposal: [https://proposals.pyth.network/?cluster=mainnet-beta&tab=proposals&proposal=5zW54MJto6mQNc8BafcAyfLJWMazfHxAhgpDJfUnoFRk](https://proposals.pyth.network/?cluster=mainnet-beta&tab=proposals&proposal=5zW54MJto6mQNc8BafcAyfLJWMazfHxAhgpDJfUnoFRk)

1. Make sure you have node-js, forge and jq installed.  
a. node-js: install `nvm` from [here](https://github.com/nvm-sh/nvm). Install node-js 22 (`nvm install 22; nvm use 22`)  
b. forge: install it from [here](https://getfoundry.sh/)  
c. jq: install it from [here](https://jqlang.github.io/jq/)
2. Clone the `pyth-crosschain` repo (`git clone ` `https://github.com/pyth-network/pyth-crosschain.git`). Go to the `pyth-crosschain` directory and run the following command: `pnpm i`
3. Get the on-chain implementation code digest by going to the `contract_manager` directory and running `npx ts-node scripts/check_proposal.ts --cluster mainnet-beta --proposal <proposal id>`
4. Get the source code digest by going to the `target_chains/ethereum/contracts` directory angd running ` pnpm exec truffle compile --all && cat build/contracts/EntropyUpgradable.json | jq -r .deployedBytecode | tr -d '\r\n' | cast keccak`. The expected hash is `0x6ed1adf0838150b563fef366873dbdcf7bc8acb8d3d74bd904c23a4f4e943c62 `
5. Check the hash digest from the on-chain implementation (from step 3) matches the hash digest from the source code (from step 4).

---

_[View the full topic](https://forum.pyth.network/t/passed-op-pip-80-entropy-v2-mainnet-upgrade-abstract/2167)._
