Аналіз смартконтрактів Sputnik DAO: децентралізоване управління екосистеми NEAR з точки зору механізму пропозицій

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

Rust смартконтракти养成日记:глибокий аналіз механізму пропозицій Sputnik DAO

Sputnik DAO як інфраструктура екосистеми NEAR, просуває проекти NEAR до децентралізованого управління. У цій статті ми детально проаналізуємо основні концепції в смартконтрактах Sputnik DAO - механізм пропозиції (Proposal).

!

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

Кожен учасник Sputnik DAO може ініціювати пропозицію, висловлюючи свою думку щодо управління проектом. З точки зору контракту, учасники можуть викликати метод add_proposal() контракту sputnikdaov2 для ініціювання нової пропозиції:

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

Автори пропозицій повинні надати детальну інформацію про пропозицію, включаючи:

  • Опис пропозиції
  • Тип пропозиції (, такі як FunctionCall, Transfer тощо )

Контракт додатково обробить цю інформацію, створивши повний об'єкт Proposal і призначивши унікальний proposal_id.

Варто зазначити, що для ініціювання пропозиції потрібно заблокувати певну кількість токенів NEAR як заставу. Ця застава буде повернена ініціатору пропозиції після нормального завершення пропозиції.

!

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

Пропозиції в Sputnik DAO можуть проходити через кілька станів:

  • InProgress: початковий стан, триває голосування
  • Approved: голосування пройшло
  • Відхилено: голосування не пройшло
  • Видалено:被移除

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

  • VoteApprove: підтримую
  • VoteReject: Проти
  • VoteRemove: видалити

Після завершення голосування оновіть статус пропозиції відповідно до результатів голосування.

!

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

Коли стан пропозиції змінюється на Approved, контракт викликає функцію internal_execute_proposal() для виконання змісту пропозиції.

Sputnik DAO підтримує кілька типів пропозицій, у цій статті особлива увага приділяється двом типовим пропозиціям:

3.1 Виконання функцій контракту пропозиція

Для пропозицій типу FunctionCall контракт виконує виклик функції, зазначений у пропозиції. Пропозиція може містити кілька об'єктів ActionCall, кожен з яких задає метод контракту та параметри, які потрібно викликати.

!

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

Пропозиції типу Transfer використовуються для переміщення токенів з контрактного рахунку на вказаний рахунок. Контракт виконає відповідні операції з переказу в залежності від типу токена та типу отримувача.

!

4. Підсумок

Ця стаття представляє основні концепції механізму пропозицій у контракті Sputnik DAO, включаючи створення пропозицій, зміни статусу та процес виконання. Цей механізм забезпечує гнучке та ефективне децентралізоване управління для проекту NEAR.

!

!

!

!

!

!

!

!

!

!

!

!

!

NEAR3.2%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 7
  • Поділіться
Прокоментувати
0/400
SelfSovereignStevevip
· 07-20 23:42
Ця пропозиція звучить складніше, ніж ETH.
Переглянути оригіналвідповісти на0
TxFailedvip
· 07-20 23:02
насправді ще одне DAO, яке зазнає невдачі через апатію виборців... вже проходив через це
Переглянути оригіналвідповісти на0
AllInAlicevip
· 07-20 23:02
Управління також передбачає проектування механізмів.
Переглянути оригіналвідповісти на0
mev_me_maybevip
· 07-20 23:01
Гроші - це тверда правда.
Переглянути оригіналвідповісти на0
GasFeeCryingvip
· 07-20 22:59
чи знову налаштування механізму? Час платити за паливо
Переглянути оригіналвідповісти на0
ChainPoetvip
· 07-20 22:58
Чи дійсно голосування має значення?
Переглянути оригіналвідповісти на0
SmartContractWorkervip
· 07-20 22:43
near хороші матеріали
Переглянути оригіналвідповісти на0
  • Закріпити