diff --git a/docs/pips/operational/op-pip-1.md b/docs/pips/operational/op-pip-1.md index 6c2adb1a..18111a88 100644 --- a/docs/pips/operational/op-pip-1.md +++ b/docs/pips/operational/op-pip-1.md @@ -24,13 +24,15 @@ Branch: [`chore/evm/blast-claim-gas`](https://github.com/pyth-network/pyth-cros * Verify the implementation following the guide below: -1. Make sure you node-js and forge installed. -2. node-js: install `nvm` from [here](https://github.com/nvm-sh/nvm) -3. forge: install it from [here](https://getfoundry.sh/) -4. Clone the `pyth-crosschain` repo (`git clone https://github.com/pyth-network/pyth-crosschain.git`) and run the following command: `npm ci && npx lerna run build` -5. Go to the proposal code branch (`git checkout `) -6. 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 ` -7. Get the source code digest by going to the `target_chains/ethereum/contracts` directory and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\n' | cast keccak` -8. Check the hash digest from the on-chain implementation (from step 6) matches the hash digest from the source code (from step 7). +1. Make sure you have node-js, forge and jq installed. + 1. node-js: install `nvm` from [here](https://github.com/nvm-sh/nvm). Install node-js 18 (`nvm install 18; nvm use 18`). + 2. forge: install it from [here](https://getfoundry.sh/) + 3. 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: `npm ci && npx lerna run build` +3. Go to the proposal code branch (`git checkout `) +4. 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 ` +5. Get the source code digest by going to the `target_chains/ethereum/contracts` directory and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\r\n' | cast keccak` +6. Check the hash digest from the on-chain implementation (from step 4) matches the hash digest from the source code (from step 5). + p.s: the codes above are not merged in our contract because these are one-off and cannot be in our generic smart-contract. We will store the diff in the repo like [this](https://github.com/pyth-network/pyth-crosschain/blob/main/target_chains/ethereum/contracts/canto-deployment-patch.diff) one. diff --git a/docs/pips/operational/op-pip-2.md b/docs/pips/operational/op-pip-2.md index 1cc26323..28f2f919 100644 --- a/docs/pips/operational/op-pip-2.md +++ b/docs/pips/operational/op-pip-2.md @@ -25,13 +25,15 @@ Branch: [`chore/evm/mode-claim-gas`](https://github.com/pyth-network/pyth-cross * Verify the implementation following the guide below: -1. Make sure you node-js and forge installed. -2. node-js: install `nvm` from [here](https://github.com/nvm-sh/nvm) -3. forge: install it from [here](https://getfoundry.sh/) -4. Clone the `pyth-crosschain` repo (`git clone https://github.com/pyth-network/pyth-crosschain.git`) and run the following command: `npm ci && npx lerna run build` -5. Go to the proposal code branch (`git checkout `) -6. 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 ` -7. Get the source code digest by going to the `target_chains/ethereum/contracts` directory and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\n' | cast keccak` -8. Check the hash digest from the on-chain implementation (from step 6) matches the hash digest from the source code (from step 7). +1. Make sure you have node-js, forge and jq installed. + 1. node-js: install `nvm` from [here](https://github.com/nvm-sh/nvm). Install node-js 18 (`nvm install 18; nvm use 18`). + 2. forge: install it from [here](https://getfoundry.sh/) + 3. 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: `npm ci && npx lerna run build` +3. Go to the proposal code branch (`git checkout `) +4. 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 ` +5. Get the source code digest by going to the `target_chains/ethereum/contracts` directory and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\r\n' | cast keccak` +6. Check the hash digest from the on-chain implementation (from step 4) matches the hash digest from the source code (from step 5). + p.s: the codes above are not merged in our contract because these are one-off and cannot be in our generic smart-contract. We will store the diff in the repo like [this](https://github.com/pyth-network/pyth-crosschain/blob/main/target_chains/ethereum/contracts/canto-deployment-patch.diff) one.