From 4dd7b3fb00fde5884dde53ce56d429023c672566 Mon Sep 17 00:00:00 2001 From: yj <47570215+YaserJazouane@users.noreply.github.com> Date: Fri, 8 Mar 2024 15:41:50 +0000 Subject: [PATCH] adding op-pip-1 and op-pip-2 and file reorg (#397) * adding op-pip-1 and op-pip-2 and file reorg * improve compliance with the format guidelines * Improve compliance with format guidelines * minor updates * fix: format the docs --------- Co-authored-by: Ali Behjati --- .../election/{ => 1}/Lanre-DropCopy.md | 0 .../Marc Tillement - Pyth Data Association.md | 2 +- .../pythian/election/{ => 1}/adam-thala.md | 0 .../election/{ => 1}/afif-synthetix.md | 0 .../election/{ => 1}/antoine-swissborg.md | 0 .../pythian/election/{ => 1}/carnation-y2k.md | 0 .../election/{ => 1}/guilhem-flowdesk.md | 6 ++-- .../election/{ => 1}/guillermo-douro.md | 0 .../pythian/election/{ => 1}/jayant-douro.md | 0 .../election/{ => 1}/khalil-PythCommunity | 4 +-- docs/councils/pythian/election/{ => 1}/naive | 0 .../pythian/election/{ => 1}/nope-solend.md | 0 .../election/{ => 1}/robinson-wormhole.md | 0 .../pythian/election/{ => 1}/shu-hmx.md | 0 .../pythian/election/{ => 1}/travis-vela.md | 0 docs/pips/constitutional/pip-0.md | 0 docs/pips/constitutional/pip-1.md | 23 +++++++++++++ docs/pips/operational/op-pip-1.md | 34 +++++++++++++++++++ docs/pips/operational/op-pip-2.md | 34 +++++++++++++++++++ 19 files changed, 96 insertions(+), 7 deletions(-) rename docs/councils/pythian/election/{ => 1}/Lanre-DropCopy.md (100%) rename docs/councils/pythian/election/{ => 1}/Marc Tillement - Pyth Data Association.md (96%) rename docs/councils/pythian/election/{ => 1}/adam-thala.md (100%) rename docs/councils/pythian/election/{ => 1}/afif-synthetix.md (100%) rename docs/councils/pythian/election/{ => 1}/antoine-swissborg.md (100%) rename docs/councils/pythian/election/{ => 1}/carnation-y2k.md (100%) rename docs/councils/pythian/election/{ => 1}/guilhem-flowdesk.md (90%) rename docs/councils/pythian/election/{ => 1}/guillermo-douro.md (100%) rename docs/councils/pythian/election/{ => 1}/jayant-douro.md (100%) rename docs/councils/pythian/election/{ => 1}/khalil-PythCommunity (99%) rename docs/councils/pythian/election/{ => 1}/naive (100%) rename docs/councils/pythian/election/{ => 1}/nope-solend.md (100%) rename docs/councils/pythian/election/{ => 1}/robinson-wormhole.md (100%) rename docs/councils/pythian/election/{ => 1}/shu-hmx.md (100%) rename docs/councils/pythian/election/{ => 1}/travis-vela.md (100%) create mode 100644 docs/pips/constitutional/pip-0.md create mode 100644 docs/pips/constitutional/pip-1.md create mode 100644 docs/pips/operational/op-pip-1.md create mode 100644 docs/pips/operational/op-pip-2.md diff --git a/docs/councils/pythian/election/Lanre-DropCopy.md b/docs/councils/pythian/election/1/Lanre-DropCopy.md similarity index 100% rename from docs/councils/pythian/election/Lanre-DropCopy.md rename to docs/councils/pythian/election/1/Lanre-DropCopy.md diff --git a/docs/councils/pythian/election/Marc Tillement - Pyth Data Association.md b/docs/councils/pythian/election/1/Marc Tillement - Pyth Data Association.md similarity index 96% rename from docs/councils/pythian/election/Marc Tillement - Pyth Data Association.md rename to docs/councils/pythian/election/1/Marc Tillement - Pyth Data Association.md index a4d20970..2004163e 100644 --- a/docs/councils/pythian/election/Marc Tillement - Pyth Data Association.md +++ b/docs/councils/pythian/election/1/Marc Tillement - Pyth Data Association.md @@ -23,4 +23,4 @@ - Relevant Experience - ≈ 3 years contributing to the Pyth Network through my role at the Pyth Data Association — mostly focused on the DeFi footprint of the Pyth Network oracle - Engaged with external governances like Synthetix (Pyth Integration SIP Presentation), Aave and Compound, as well as with various layer-1 like Optimism (Cycle 13 grant and RPGF) - - ≈ 5 years in crypto and a specific interest towards DeFi ; so attuned to the Pyth Network target market \ No newline at end of file + - ≈ 5 years in crypto and a specific interest towards DeFi ; so attuned to the Pyth Network target market diff --git a/docs/councils/pythian/election/adam-thala.md b/docs/councils/pythian/election/1/adam-thala.md similarity index 100% rename from docs/councils/pythian/election/adam-thala.md rename to docs/councils/pythian/election/1/adam-thala.md diff --git a/docs/councils/pythian/election/afif-synthetix.md b/docs/councils/pythian/election/1/afif-synthetix.md similarity index 100% rename from docs/councils/pythian/election/afif-synthetix.md rename to docs/councils/pythian/election/1/afif-synthetix.md diff --git a/docs/councils/pythian/election/antoine-swissborg.md b/docs/councils/pythian/election/1/antoine-swissborg.md similarity index 100% rename from docs/councils/pythian/election/antoine-swissborg.md rename to docs/councils/pythian/election/1/antoine-swissborg.md diff --git a/docs/councils/pythian/election/carnation-y2k.md b/docs/councils/pythian/election/1/carnation-y2k.md similarity index 100% rename from docs/councils/pythian/election/carnation-y2k.md rename to docs/councils/pythian/election/1/carnation-y2k.md diff --git a/docs/councils/pythian/election/guilhem-flowdesk.md b/docs/councils/pythian/election/1/guilhem-flowdesk.md similarity index 90% rename from docs/councils/pythian/election/guilhem-flowdesk.md rename to docs/councils/pythian/election/1/guilhem-flowdesk.md index 7acfec9b..f284294e 100644 --- a/docs/councils/pythian/election/guilhem-flowdesk.md +++ b/docs/councils/pythian/election/1/guilhem-flowdesk.md @@ -13,12 +13,12 @@ - Company name : Flowdesk - Main Location - - Continent : Europe + - Continent : Europe - Motivations to participate in the Pythian Council Flowdesk is already contributing to the Pyth Network as a data provider since September 2022. We are eager to deepen our commitment by becoming a member of the Pythian Council, bringing our firsthand market knowledge to the governance process. - + - Relevant Experience - Co-founder and CEO of Flowdesk, a full-service digital asset trading and technology firm - - Previously Co-founder & CEO of a privacy-centric blockchain + - Previously Co-founder & CEO of a privacy-centric blockchain diff --git a/docs/councils/pythian/election/guillermo-douro.md b/docs/councils/pythian/election/1/guillermo-douro.md similarity index 100% rename from docs/councils/pythian/election/guillermo-douro.md rename to docs/councils/pythian/election/1/guillermo-douro.md diff --git a/docs/councils/pythian/election/jayant-douro.md b/docs/councils/pythian/election/1/jayant-douro.md similarity index 100% rename from docs/councils/pythian/election/jayant-douro.md rename to docs/councils/pythian/election/1/jayant-douro.md diff --git a/docs/councils/pythian/election/khalil-PythCommunity b/docs/councils/pythian/election/1/khalil-PythCommunity similarity index 99% rename from docs/councils/pythian/election/khalil-PythCommunity rename to docs/councils/pythian/election/1/khalil-PythCommunity index 308173e1..09dabc24 100644 --- a/docs/councils/pythian/election/khalil-PythCommunity +++ b/docs/councils/pythian/election/1/khalil-PythCommunity @@ -15,7 +15,7 @@ A GCC Nation within the Middle East. - Motivations to participate in the Pythian Council -As a long standing community member I understand how the Community is involved and drives the Pyth Network. This unique perspective allows me to assist in driving innovation within the network and ensuring that all stakeholders are considered in major decisions. +As a long standing community member I understand how the Community is involved and drives the Pyth Network. This unique perspective allows me to assist in driving innovation within the network and ensuring that all stakeholders are considered in major decisions. In my professional life I am a Cyber Security analyst. This not only allows me to have high personal standards but will also provide benefits to the Council and the Pyth Network as a whole. I am standing for election because I have a strongly held view that the entire diverse membership of Pyth Network should be represented on the Council. @@ -24,5 +24,3 @@ I am standing for election because I have a strongly held view that the entire d I understand the importance of active engagement in shaping the Pyth Network’s future. Because of my ability and experience in fostering discussions, addressing queries, and promoting awareness of Pyth I was awarded the role of Ambassador in 2023. With 15 years of experience as IT technician and consultant, alongside my cybersecurity qualifications, I bring a wealth of knowledge in securing digital systems. Specifically, my expertise lies in safeguarding data, mitigating risks, and ensuring the integrity of critical infrastructure. I now have years of experience in Web3 and in DeFi. My enthusiasm for this transformative technology is unwavering. I aspire to continue to contribute to the decentralized finance (DeFi) world and drive innovation through effective collaboration, transparent dialogue and consensus-driven decision-making. - - diff --git a/docs/councils/pythian/election/naive b/docs/councils/pythian/election/1/naive similarity index 100% rename from docs/councils/pythian/election/naive rename to docs/councils/pythian/election/1/naive diff --git a/docs/councils/pythian/election/nope-solend.md b/docs/councils/pythian/election/1/nope-solend.md similarity index 100% rename from docs/councils/pythian/election/nope-solend.md rename to docs/councils/pythian/election/1/nope-solend.md diff --git a/docs/councils/pythian/election/robinson-wormhole.md b/docs/councils/pythian/election/1/robinson-wormhole.md similarity index 100% rename from docs/councils/pythian/election/robinson-wormhole.md rename to docs/councils/pythian/election/1/robinson-wormhole.md diff --git a/docs/councils/pythian/election/shu-hmx.md b/docs/councils/pythian/election/1/shu-hmx.md similarity index 100% rename from docs/councils/pythian/election/shu-hmx.md rename to docs/councils/pythian/election/1/shu-hmx.md diff --git a/docs/councils/pythian/election/travis-vela.md b/docs/councils/pythian/election/1/travis-vela.md similarity index 100% rename from docs/councils/pythian/election/travis-vela.md rename to docs/councils/pythian/election/1/travis-vela.md diff --git a/docs/pips/constitutional/pip-0.md b/docs/pips/constitutional/pip-0.md new file mode 100644 index 00000000..e69de29b diff --git a/docs/pips/constitutional/pip-1.md b/docs/pips/constitutional/pip-1.md new file mode 100644 index 00000000..74a9c001 --- /dev/null +++ b/docs/pips/constitutional/pip-1.md @@ -0,0 +1,23 @@ +# PIP-1 : Adoption of the Pyth DAO Constitution + +- Abstract: + - This document ("PIP-1”) proposes the adoption of a decision framework for the Pyth DAO and the governing framework for the holders of $PYTH, the “Pyth DAO Constitution”, as formulated here: https://github.com/pyth-network/governance/blob/309c716599617971c6abb18f2097412d977b954f/docs/constitution/pyth-dao-constitution.md + - Once the Pyth DAO Constitution adopted, the Pyth DAO will operate as outlined in the constitution. + +- Rationale: + - The Pyth DAO should adopt a clear framework regarding its governance, operations, and processes. The framework should fully inform its members of how the DAO functions and how $PYTH token holders relate to the DAO. + - Through PIP-1, the Pyth DAO will have the ability to submit subsequent Pyth Improvement Proposals (“**PIPs**”), collectively decide on them and implement them, and delegate certain responsibilities to elected councils. + +- Key Terms: + + PIP-1 proposes to adopt the Pyth DAO Constitution, a framework that: + + - sets rules and procedures on the submission and voting on PIPs + - suggests the formation of two councils: the Pythian Council and the Price Feed Council which are respectively responsible for the voting and implementation of certain Operational PIPs as defined in the proposed constitution + - lists a set of values and principles for the Pyth DAO community centered around ownership, governance, and inclusivity for the long-term benefit of the Pyth DAO + +- Implementation Plan: + - Approval of PIP-1 + +- Timeline: + - PIP-1 is subject to a 7-day on-chain voting period from the time of posting in the Pyth Forum diff --git a/docs/pips/operational/op-pip-1.md b/docs/pips/operational/op-pip-1.md new file mode 100644 index 00000000..0d286b98 --- /dev/null +++ b/docs/pips/operational/op-pip-1.md @@ -0,0 +1,34 @@ +# Operational PIP: Upgrade Blast Contract (Pythian Council) + +## Abstract + +Upgrade the current Pyth oracle contract on Blast to be able to collect a share of the gas fees spent when updating a price on-chain. + +## Rationale + +Collect the revenue generated from usage of the oracle by downstream applications at no extra cost to users (paid out from the centralized sequencer revenue). + +## Description + +This proposal is to update the Pyth contract on Blast to enable gas fee claims (as part of sequencer revenue sharing). After we upgrade the contract to this version, we call the new added function which enables the gas fee claims (to the contract itself) and later we can add functionality to claim them. + +## Implementation Plan + +* Discuss [Proposal](http://xc-admin.xyz.pyth.network/?tab=proposals&proposal=9JFcL29kfJATziNqFSWgpPuTw82n3ZwiqM4DniFEs1su): `9JFcL29kfJATziNqFSWgpPuTw82n3ZwiqM4DniFEs1su` among the Pyth community + +* Implement the proposed [Code change](https://github.com/pyth-network/pyth-crosschain/compare/chore/evm/blast-claim-gas) in accordance with the Blast [docs](https://docs.blast.io/building/guides/gas-fees + +[Branch](https://github.com/pyth-network/pyth-crosschain/tree/chore/evm/blast-claim-gas): `chore/evm/blast-claim-gas` + +* 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 pyth-crosschain repo and run the following command: `npm ci && npx lerna run build` +5. Go to the proposal code branch +6. 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 ` +7. Get the source code digest by going to the `target_chains/ethereum/contracts` and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\n' | cast keccak` +8. Match the of the on-chain digest with the source code digest. + +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 new file mode 100644 index 00000000..6a75fad1 --- /dev/null +++ b/docs/pips/operational/op-pip-2.md @@ -0,0 +1,34 @@ +# Operational PIP: Upgrade Mode Contract (Pythian Council) + +## Abstract + +Upgrade the current Pyth oracle contract on Mode to be able to collect a share of the gas fees spent when updating a price on-chain. + +## Rationale + +Collect the revenue generated from usage of the oracle by downstream applications at no extra cost to users (paid out from the centralized sequencer revenue). + +## Description + +This proposal is to update the Pyth contract on Mode to enable gas fee claims (as part of sequencer revenue sharing of these protocols). After we upgrade the contract to this version, we call the new added function which enables the gas fee claims (to the contract itself) and later we can add functionality to claim them. + +## Implementation Plan + +* Discuss [Proposal](https://xc-admin.xyz.pyth.network/?tab=proposals&proposal=3GPW7Xed6N8Tfix21VqmywHJg5JDeK3nMJMD1gwmQvth : `3GPW7Xed6N8Tfix21VqmywHJg5JDeK3nMJMD1gwmQvth` among the Pyth community + +* Implement the proposed [Code change](https://github.com/pyth-network/pyth-crosschain/compare/chore/evm/mode-claim-gas) ([docs](https://docs.mode.network/build-on-mode/sfs-sequencer-fee-sharing/register-a-smart-contract/sfs-registering-a-contract-with-remix) for this change and gas sharing contract address) + +[branch](https://github.com/pyth-network/pyth-crosschain/tree/chore/evm/mode-claim-gas): `chore/evm/mode-claim-gas` + +* 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 pyth-crosschain repo and run the following command: `npm ci && npx lerna run build` +5. Go to the proposal code branch +6. 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 ` +7. Get the source code digest by going to the `target_chains/ethereum/contracts` and running `npx truffle compile --all && cat build/contracts/PythUpgradable.json | jq -r .deployedBytecode | tr -d '\n' | cast keccak` +8. Match the of the on-chain digest with the source code digest. + +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.