Ядро смарт-контрактов Sputnik DAO: Глубина анализа механизма предложений

robot
Генерация тезисов в процессе

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):

  • Текстовое описание предложения (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).

!

ACT3.39%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 3
  • Поделиться
комментарий
0/400
ZenChainWalkervip
· 15ч назад
大道至简 near все же бык
Посмотреть ОригиналОтветить0
Hash_Banditvip
· 08-01 17:45
майнинг вблизи Протокол в 2020 году... хорошие времена, если честно
Посмотреть ОригиналОтветить0
RuntimeErrorvip
· 08-01 17:32
Когда мы сможем использовать новую версию!
Посмотреть ОригиналОтветить0
  • Закрепить