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 для ініціювання нової пропозиції:

іржа Паб Fn add_proposal(&mut self, пропозиція: ProposalInput) -> U64

Ініціатор повинен надати детальну інформацію про пропозицію (ProposalInput):

  • Текстовий опис пропозиції (Description)
  • Тип пропозиції ( kind )

Інформація про пропозицію передається як параметр у метод add_proposal(), після перевірки та обробки генерується повна пропозиція (Proposal), яка пов'язується з унікальним proposal_id і додається до пулу пропозицій, що підтримується глобально в смартконтракті.

Повна інформація про властивості пропозиції включає:

  • Опис: Опис
  • 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).

!

ACT1.8%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 3
  • Поділіться
Прокоментувати
0/400
ZenChainWalkervip
· 6год тому
大道至简 near все ж бик
Переглянути оригіналвідповісти на0
Hash_Banditvip
· 08-01 17:45
майнінг біля протоколу в 2020 році... хороші часи, якщо чесно
Переглянути оригіналвідповісти на0
RuntimeErrorvip
· 08-01 17:32
Коли ми зможемо скористатися новою версією?
Переглянути оригіналвідповісти на0
  • Закріпити