Sputnik DAO смартконтракти核心:提案机制详解

robot
Генерація анотацій у процесі

Rust смартконтракти серії: Аналіз основних концепцій Sputnik DAO

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

Sputnikdaov2 є смартконтрактом, що використовується для голосування з управління спільнотою Sputnik-DAO. У цій статті буде представлено основні концепції цього контракту: пропозиція (Proposal), а наступні статті будуть детально висвітлювати відповідні моделі управління спільнотою DAO (Policy).

!

1. Ініціювання пропозиції

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

На рівні контракту, члени DAO можуть викликати метод add_proposal() контракту sputnikdaov2 для ініціювання нової пропозиції. Пропонент повинен надати детальну інформацію про пропозицію (ProposalInput), включаючи:

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

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

Повна інформація про атрибути, що містяться в пропозиції:

  • опис: Опис
  • kind: тип
  • proposer: пропозиціонер
  • status: статус
  • submission_time: час подачі
  • vote_counts: підрахунок голосів
  • votes: Деталі голосування

Sputnik-DAO вимагає від пропонентів внести певну кількість токенів NEAR у якості застави при виклику add_proposal(). Ця застава буде повернена пропоненту після нормального завершення пропозиції.

!

2. Стан пропозиції

Пропозиції в Sputnik-DAO можуть проходити через кілька станів, початковий стан - InProgress. Зміна стану здійснюється за допомогою методу act_proposal().

Члени DAO можуть викликати act_proposal() для виконання операцій з пропозицією:

  • VoteApprove: Так
  • VoteReject: Проти
  • VoteRemove: видалити

Після голосування буде викликано policy.proposal_status() для підрахунку голосів. Статус пропозиції, що відповідає порогу голосування, буде змінено:

  • Approved: виклик internal_execute_proposal() для виконання
  • Відхилено/Видалено: виклик internal_reject_proposal() обробка

Запропоновані в стані Removed будуть видалені з пулу пропозицій і депозит не буде повернуто, а пропозиції в стані Rejected залишаться в пулі пропозицій і депозит буде повернуто.

!

3. Виконання пропозиції

Пропозиції в стані Approved будуть викликати internal_execute_proposal() для виконання змісту рішення. Sputnik-DAO підтримує кілька типів пропозицій, у цій статті представлені два типових типи:

3.1 виконання функцій смартконтракту пропозиції

Тип пропозиції FunctionCall передається через параметр ProposalInput для виконання функціональної операції (actions). Кожен ActionCall може вказувати назву методу контракту та параметри. Sputnik-DAO використовує форму Promise Batch Actions для виконання функцій контракту.

3.2 Пропозиція щодо передачі коштів за смартконтрактом

Пропозиція типу Transfer використовується для переміщення токенів, накопичених на контрактному рахунку, до вказаного receiver_id. Виконується виклик функції internal_payout() для здійснення операцій переказу для різних типів токенів та receiver_id.

!

ACT3.34%
BATCH-0.48%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 6
  • Репост
  • Поділіться
Прокоментувати
0/400
RamenDeFiSurvivorvip
· 08-09 18:37
поряд з тим, що працює досить швидко
Переглянути оригіналвідповісти на0
DefiPlaybookvip
· 08-09 18:36
На основі аналізу даних у блокчейні, TVL зростання 25.6%
Переглянути оригіналвідповісти на0
SerLiquidatedvip
· 08-09 18:34
Що робити, якщо голосував п'яним? Скажіть, хто знає.
Переглянути оригіналвідповісти на0
fork_in_the_roadvip
· 08-09 18:32
управління DAO витрачає час...
Переглянути оригіналвідповісти на0
BoredApeResistancevip
· 08-09 18:24
Коли NEAR зможе мати хоч якийсь надійний DAO...
Переглянути оригіналвідповісти на0
BoredRiceBallvip
· 08-09 18:18
Ця пропозиція безпосередньо дивиться на код, хіба це не привабливо?
Переглянути оригіналвідповісти на0
  • Закріпити