Sputnik-DAO является инфраструктурой, предоставляемой NEAR Protocol, которая способствует развитию экосистемы NEAR в сторону децентрализации. В настоящее время эта платформа уже помогла создать несколько децентрализованных автономных сообществ для проектов NEAR, предлагая полные и гибкие решения для управления принятием решений в сообществе.
Sputnikdaov2 является смарт-контрактом для голосования по управлению сообществом Sputnik-DAO. В этой статье будут представлены основные концепции данного контракта: предложение (Proposal), последующие статьи будут посвящены управленческим моделям DAO сообщества (Policy).
!
1. Инициирование предложения
Члены сообщества Sputnik-DAO могут высказывать мнения или подавать предложения, другие акционеры могут рассматривать и голосовать по предложениям. Члены могут влиять на будущее проекта, голосуя или инициируя новые предложения.
На уровне контракта члены могут вызвать метод add_proposal() контракта sputnikdaov2 для инициирования нового предложения:
Предложитель должен предоставить подробную информацию о предложении (ProposalInput):
Текстовое описание предложения (Description)
Тип предложения ( kind )
Информация о предложении передается в метод add_proposal() в качестве параметра, после проверки и обработки создается полное предложение (Proposal), которое связывается с уникальным proposal_id и добавляется в пул предложений, поддерживаемый глобально в смарт-контрактах.
Полная информация о свойствах предложения включает:
description:описание
kind:тип
proposer:предложитель
status: статус ( по умолчанию InProgress )
submission_time: время подачи
vote_counts: счетчик голосов ( изначально пуст )
votes:детали голосования(первоначально пусто)
В Sputnik-DAO существует концепция депозита за предложение (proposal_bond), где инициатор предложения должен заложить определенную сумму токенов NEAR в качестве залога при вызове add_proposal(). Этот депозит будет возвращен инициатору предложения по завершении предложения.
!
2. Статус предложения
Предложения в Sputnik-DAO могут проходить через несколько состояний, начальное состояние - InProgress. Изменение состояния управляется методом act_proposal().
Члены могут вызвать act_proposal() для выполнения следующих действий по предложению:
VoteApprove: одобрить
VoteReject: Против
VoteRemove: Удалить
После голосования программа вызовет policy.proposal_status() для подсчета голосов. Статус предложений, соответствующих порогу голосования, будет соответственно изменен:
Approved: одобрено internal_execute_proposal() выполнение
Отклонено/Удалено: обработка через internal_reject_proposal()
提案 в состоянии Removed будет удален из пула предложений и депозит не будет возвращен, а предложение в состоянии Rejected будет сохранено и депозит будет возвращен.
!
3. Исполнение предложений
Одобренные предложения будут вызывать internal_execute_proposal() для выполнения содержания решения. Sputnik-DAO поддерживает различные типы предложений, в этой статье рассматриваются два типичных типа:
3.1 Исполнение предложений функции смарт-контракта ( FunctionCall )
Тип предложения FunctionCall создан с функцией операции, которую необходимо выполнить (actions). internal_execute_proposal() выполняет эти операции в виде Promise Batch Actions.
3.2 Предложение по переводу средств по смарт-контракту (Transfer )
Тип предложения Transfer используется для перевода токенов, накопленных на контрактном счете, на указанный счет. internal_execute_proposal() будет вызывать функцию internal_payout() для выполнения операций перевода различных типов токенов.
!
4. Итоги
В данной статье представлены ключевые концепции контракта Sputnik DAO - предложение (Proposal), включая создание предложения, изменения статуса и процесс выполнения. В дальнейшем будет представлена модель управления Sputnik-DAO на основе предложения (Policy).
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
15 Лайков
Награда
15
3
Поделиться
комментарий
0/400
ZenChainWalker
· 15ч назад
大道至简 near все же бык
Посмотреть ОригиналОтветить0
Hash_Bandit
· 08-01 17:45
майнинг вблизи Протокол в 2020 году... хорошие времена, если честно
Ядро смарт-контрактов Sputnik DAO: Глубина анализа механизма предложений
Rust смарт-контракты养成日记(11) Sputnik DAO::解析提案机制
Sputnik-DAO является инфраструктурой, предоставляемой NEAR Protocol, которая способствует развитию экосистемы NEAR в сторону децентрализации. В настоящее время эта платформа уже помогла создать несколько децентрализованных автономных сообществ для проектов NEAR, предлагая полные и гибкие решения для управления принятием решений в сообществе.
Sputnikdaov2 является смарт-контрактом для голосования по управлению сообществом Sputnik-DAO. В этой статье будут представлены основные концепции данного контракта: предложение (Proposal), последующие статьи будут посвящены управленческим моделям DAO сообщества (Policy).
!
1. Инициирование предложения
Члены сообщества Sputnik-DAO могут высказывать мнения или подавать предложения, другие акционеры могут рассматривать и голосовать по предложениям. Члены могут влиять на будущее проекта, голосуя или инициируя новые предложения.
На уровне контракта члены могут вызвать метод add_proposal() контракта sputnikdaov2 для инициирования нового предложения:
русть pub fn add_proposal(&mut self, предложение: ProposalInput) -> U64
Предложитель должен предоставить подробную информацию о предложении (ProposalInput):
Информация о предложении передается в метод add_proposal() в качестве параметра, после проверки и обработки создается полное предложение (Proposal), которое связывается с уникальным proposal_id и добавляется в пул предложений, поддерживаемый глобально в смарт-контрактах.
Полная информация о свойствах предложения включает:
В Sputnik-DAO существует концепция депозита за предложение (proposal_bond), где инициатор предложения должен заложить определенную сумму токенов NEAR в качестве залога при вызове add_proposal(). Этот депозит будет возвращен инициатору предложения по завершении предложения.
!
2. Статус предложения
Предложения в Sputnik-DAO могут проходить через несколько состояний, начальное состояние - InProgress. Изменение состояния управляется методом act_proposal().
Члены могут вызвать act_proposal() для выполнения следующих действий по предложению:
После голосования программа вызовет policy.proposal_status() для подсчета голосов. Статус предложений, соответствующих порогу голосования, будет соответственно изменен:
提案 в состоянии Removed будет удален из пула предложений и депозит не будет возвращен, а предложение в состоянии Rejected будет сохранено и депозит будет возвращен.
!
3. Исполнение предложений
Одобренные предложения будут вызывать internal_execute_proposal() для выполнения содержания решения. Sputnik-DAO поддерживает различные типы предложений, в этой статье рассматриваются два типичных типа:
3.1 Исполнение предложений функции смарт-контракта ( FunctionCall )
Тип предложения FunctionCall создан с функцией операции, которую необходимо выполнить (actions). internal_execute_proposal() выполняет эти операции в виде Promise Batch Actions.
3.2 Предложение по переводу средств по смарт-контракту (Transfer )
Тип предложения Transfer используется для перевода токенов, накопленных на контрактном счете, на указанный счет. internal_execute_proposal() будет вызывать функцию internal_payout() для выполнения операций перевода различных типов токенов.
!
4. Итоги
В данной статье представлены ключевые концепции контракта Sputnik DAO - предложение (Proposal), включая создание предложения, изменения статуса и процесс выполнения. В дальнейшем будет представлена модель управления Sputnik-DAO на основе предложения (Policy).
!