Анализ смарт-контрактов Sputnik DAO: подробное объяснение механизма предложений и процесса выполнения

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

Rust смарт-контракты养成日记(11): Анализ механизма предложений DAO Sputnik

Sputnik-DAO как инфраструктура NEAR Protocol, способствует развитию экосистемы NEAR в сторону децентрализации. В настоящее время эта платформа уже способствовала созданию нескольких децентрализованных автономных сообществ NEAR и предоставляет полные и гибкие решения для управления сообществом.

sputnikdaov2 является смарт-контрактом для голосования по управлению сообществом Sputnik-DAO. В этой статье будут представлены ключевые концепции данного контракта: предложение (Proposal), последующие статьи будут посвящены связанным моделям управления DAO сообществом (Policy).

1. Инициирование предложения

Каждый участник Sputnik-DAO может высказывать мнение или подавать предложения по управлению проектом. Каждый член сообщества, владеющий акциями, может рассматривать и голосовать по предложениям, влияя на будущее направление проекта.

На уровне контракта, члены DAO могут вызвать метод add_proposal() контракта sputnikdaov2 для запуска нового предложения:

ржавчина pub fn add_proposal(&mut self, предложение: ProposalInput) -> U64

Предложитель должен предоставить подробную информацию о предложении ( ProposalInput ):

  • Текстовое описание предложения (Description)
  • Тип предложения ( kind )

Эти данные будут переданы в метод add_proposal(), который выполнит проверку и создаст полный проект (Proposal), связанный с уникальным proposal_id, добавив его в пул предложений, поддерживаемый смарт-контрактом.

Полная информация о свойствах предложения включает в себя:

  • description: Описание
  • kind: тип
  • proposer: Предложитель
  • статус: 状态
  • submission_time: время подачи
  • vote_counts: количество голосов
  • votes: Записи голосования

Важно отметить, что в Sputnik-DAO существует концепция депозитов предложений (proposal_bond), при этом инициатору предложения необходимо внести определенную сумму токенов NEAR в качестве залога при вызове add_proposal(). Этот депозит будет возвращен по окончании предложения.

!

2. Статус предложения

Предложения в Sputnik-DAO могут проходить через несколько состояний:

  • InProgress: В процессе
  • Approved: Одобрено
  • Отклонено: 已拒绝
  • Удалено: 已移除

Изменение статуса предложения осуществляется с помощью метода act_proposal(). Члены DAO могут вызывать этот метод для выполнения следующих действий с предложением:

  • VoteApprove: Да
  • VoteReject: против
  • VoteRemove: Удалить

После голосования будет вызван policy.proposal_status() для подсчета голосов. Статус предложений, соответствующих условиям, будет изменен на Approved, Rejected или Removed.

Одобренные предложения будут выполнены, а предложения со статусами Отклонено и Удалено будут завершены. Предложения со статусом Удалено будут удалены из пула предложений, и депозит не будет возвращен.

!

3. Исполнение предложений

Для предложений с состоянием Approved, act_proposal() будет вызывать internal_execute_proposal() для выполнения содержания предложения.

Sputnik-DAO поддерживает несколько типов предложений, в основном касающихся обновления конфигурации модели управления 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).

!

ACT-4.28%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 3
  • Поделиться
комментарий
0/400
APY追逐者vip
· 8ч назад
Исполнительная способность на высшем уровне
Посмотреть ОригиналОтветить0
GhostAddressMinervip
· 18ч назад
Выделите основные моменты: акцент на депозите.
Посмотреть ОригиналОтветить0
RugResistantvip
· 18ч назад
Система предложений очень научна
Посмотреть ОригиналОтветить0
  • Закрепить