# Протокол изменения протоколов L2/DAO ###### tags: `Functional Note` `DAO` `Collective` `Vote` `Descision making` ## Голоссарий * [Протокол](https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB) `это система правил, определяющая, как данные обмениваются внутри или между приложениями.` * [Токен](https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D0%BA%D0%B5%D0%BD_(%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D0%B0%D0%BB%D1%8E%D1%82%D0%B0)) `это единица учёта, предназначенная для представления цифрового баланса в некотором активе` * [FT и NFT токены](https://medium.com/@TerraVirtua_RUS/%D0%B2%D0%B7%D0%B0%D0%B8%D0%BC%D0%BE%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%8F%D0%B5%D0%BC%D1%8B%D0%B5-%D0%B8-%D0%BD%D0%B5%D0%B7%D0%B0%D0%BC%D0%B5%D0%BD%D1%8F%D0%B5%D0%BC%D1%8B%D0%B5-%D1%82%D0%BE%D0%BA%D0%B5%D0%BD%D1%8B-nfts-%D0%B2%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82%D1%8B-%D0%B8%D1%85-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B2-%D0%B8%D0%B3%D1%80%D0%B0%D1%85-55285925fbfc) * [Консенсус](https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%81%D0%B5%D0%BD%D1%81%D1%83%D1%81) ## Протокол изменений Протокол изменений распределенных приложений(**`dapps`** - decentralized apps), развернутых в основной сети позволяет обеспечить инклюзивный и устойчивый консенсус для каждого приложения. Его достижение необходимо для предотвращения размытия капитализации приложения через деление на копии(появления форков) - практика показала что отсутствие протокола изменения фатально для таких типов приложений. Протокол изменений через предложения по улучшению(**`IP`** - improvment proposal) предлагают заинтересованным сторонам способ участвовать в улучшении функций и функционирования протоколов, предлагая изменения или участвуя в обсуждении предложений. Жизненный цикл любого приложения в L2 начинается с публикации базового протокола в качестве корневого стандартного(`PROTOCOL-NAME/Governance/IP/0`), предложения по улучшению, касающиеся его могут быть адресованы с помощью **`IP`**. Сам **`IP`** - это проектный документ, в котором описываются предлагаемые изменения или новые функции. Как текстовый файл, поддерживаемый в базе данных с поддержкой контролем версий, он служит исторической записью решений, принятых в процессе утверждения. Протокол изменения через **`IP`** включен в набор обязательных интерфейсов любого приложения в сети **`L2`**. Технические решения контролируются техническим комитетом соответствующего протокола(**`PIC`** - Protocol Improvement Committee). Ежедневные технические решения принимаются с использованием структуры, вдохновленной органами стандартизации(такими как [Консоурциум всемирной паутины/W3C/](https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%81%D0%BE%D1%80%D1%86%D0%B8%D1%83%D0%BC_%D0%92%D1%81%D0%B5%D0%BC%D0%B8%D1%80%D0%BD%D0%BE%D0%B9_%D0%BF%D0%B0%D1%83%D1%82%D0%B8%D0%BD%D1%8B) и [Инженерный совет интернета/IETF/](https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B6%D0%B5%D0%BD%D0%B5%D1%80%D0%BD%D1%8B%D0%B9_%D1%81%D0%BE%D0%B2%D0%B5%D1%82_%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B0)) и проектами с открытым исходным кодом(такими как [Python](https://www.python.org/dev/peps/), [Linux Foundation](https://ru.wikipedia.org/wiki/The_Linux_Foundation) и [Apache Foundation](https://www.apache.org/foundation/)) для координации работы участников с открытым исходным кодом. Этот процесс основан на семействе подходов, полученных из процесса [Python PEP](https://www.python.org/dev/peps/). Его поддерживает команда сопровождающих, которые назначаются индивидуально для работы в качестве участников, контролирующих контракт **`PIC`** и работают над достижением консенсуса среди членов сообщества по поводу технических решений. Кроме того, вопросы **`IP`** обычно обсуждаются ведущим специалистом **`PIC`**. ### Типы предложений ```mermaid graph TD A[Заинтересованное лицо] -->| Публикует | B[Предложение по улучшению] B -->| Влияет на протокол приложения | C[Стандарное предложение] B -->| Влияет на протокол управления | D[Процессное предложение] B -->| Не влияет на протокол | E[Информационное предложение] ``` > Сложно объяснить различия на русском, поэтому небольшой абзац на английском Standard `IP`s describe any change or addition that affects dapp, such as a change to the protocol, a change to `dapp` message processing, proposed application standards/conventions, or any change or addition that affects the interoperability of applications using `dapp`. Process `IP`s describe the governance procedures and tools of the `dapp` life-circle, such as the `IP` procedure itself, infrastructure plug-ins, and other development tools and guidelines. Informational `IP`s describe a `dapp` design issue, or provide general guidelines or information to the `dapp` community, but do not propose a material change or addition to `dapp` protocol. Informational `IP`s do not necessarily represent `dapp` community consensus or a recommendation, so users and implementers are free to ignore Informational `IP`s or follow their advice. ### Жизненный цикл предложения ```flow idea=>start: Идея deploy=>end: Развертывание idea_chat=>operation: Обсуждение draft_chat=>operation: Обсуждение last_call_chat=>operation: Обсуждение dev=>operation: Разработка idea_cond=>condition: Голосование по идее draft_cond=>condition: Голосование по драфту last_call_cond=>condition: Финальное голосование по заявке draft=>operation: Драфт last_call=>operation: Последний звонок idea->idea_chat->idea_cond idea_cond(yes)->draft->draft_chat->draft_cond draft_cond(yes)->last_call->last_call_chat->last_call_cond last_call_cond(yes)->deploy idea_cond(no)->idea_chat draft_cond(no)->draft_chat last_call_cond(no)->last_call_chat ``` ## Типы протоколов голосования TBA Классы алгоритмов, ответственные за согласованное принятие решения принято называть [протоколами консенсуса](https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D1%81%D0%B5%D0%BD%D1%81%D1%83%D1%81). Разработка таких протоколов является наиболее трудоемкой задачей в computer since. В контексте L2/DAO имеет смысл использовать консенсусы, на основе [PoA(Proof-of-authority)](https://en.wikipedia.org/wiki/Proof_of_authority) и/или [PoS(Proof-of-stake)](https://en.wikipedia.org/wiki/Proof_of_stake). ## Метаданные заявки TBA ```jsonld= { "ID" : "DID" "title" : "string" "author" : "DID" "discussions-to" : "DID" "Status" : "<Draft | Last Call | Accepted | Final | Rejected>" "last-call-end-date" : "timestamp" "type" : "<Standards Track (Core, Networking, Interface, Application) | Informational | Meta>" "versions" : "DID" } ``` ## Внешние ресурсы | Описание | URL | | -------- | -------- | | Libra governance model(PoA) | A. [lip.libra.org](https://lip.libra.org/overview) | | Ethereum IP's(PoA) | A. [eips.ethereum.org](https://eips.ethereum.org/) | | FreeTON Contests and IP's | A. [freeton.org](https://freeton.org/contests) | Polka DOT governance(PoS) | A. [wiki.polkadot.network](https://wiki.polkadot.network/docs/en/learn-governance) | | Deep Dive into Tezos Gov Model(PoS) | A. [hackernoon.com](https://hackernoon.com/the-darkhorse-dapp-killer-a-deep-dive-into-the-tezos-architecture-governance-and-scalability-2sx8327y) B. [learn.tqtezos.com](https://learn.tqtezos.com/files/self-amendment.html#introduction) | | TELOS vs Tezos | A. [telosnetwork.io](https://telosnetwork.io/2020/01/30/blockchain-governance-telos-v-tezos/) | | 💡 **Quadratic** PoA | A. [papers.ssrn.com](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531) | | Nominated PoS | A. [w3f-research.readthedocs.io](https://w3f-research.readthedocs.io/en/latest/polkadot/NPoS/index.html)