Смарт-контракты
DAO в XDAO TON — это не один контракт, а набор связанных смарт-контрактов на TON: базовый контракт DAO плюс набор подключаемых плагинов.
Публичные адреса основных контрактов XDAO TON (Factory, DAO master и т. д.) на момент написания этой страницы уточняются и будут опубликованы отдельно, по аналогии с адресами EVM-версии в разделе Смарт-контракты (EVM). Ниже описана структура компонентов DAO, а не конкретные адреса — не полагайтесь на неподтверждённые адреса из сторонних источников.
Из чего состоит DAO
DAO master
Основной контракт DAO. Одновременно является jetton master для GP-токена DAO — то есть управляет выпуском (mint) и сжиганием (burn) GP, хранит текущий порог general consensus и исполняет предложения ончейн после того, как они набрали нужную долю голосов.
Плагины (Plugin / Sub-Wallet)
DAO хранит список подключённых плагинов — каждый устанавливается отдельным предложением (см. Плагины и модули):
- LP Manager (Crowdfunding Module) — один или несколько на DAO; каждый выпускает свой LP-токен (jetton) и ведёт кампании краудфандинга.
- Mass Payout Plugin — распределяет средства между держателями LP-токена (раунды дистрибуции и push-раунды).
- Sub-Wallet — отдельный кошелёк DAO для разделения средств по назначению.
Контракты кампании краудфандинга
Когда LP Manager запускает кампанию, разворачивается отдельный набор контрактов на кампанию:
- Crowdfunding master — контракт конкретной кампании: параметры (soft cap, hard cap, сроки, whitelist), состояние (active / successful / failed / emergency withdrawn) и агрегированные данные по вкладчикам.
- Helper — персональный контракт на каждого участника кампании, через который проходит взнос, клейм LP и refund.
- VestingVault — контракт vesting LP-токенов конкретного участника, если в кампании включён vesting (TGE-разблокировка, cliff-период, линейная разблокировка).
Как компоненты связаны
DAO master хранит список плагинов → LP Manager хранит адрес своего LP-jetton master и список кампаний → у каждой кампании есть свой Crowdfunding master → у каждого участника кампании — свой Helper (и, при vesting, своя VestingVault). Технические модели этих объектов (Dao, Plugin, CrowdfundingCampaign, ParticipantVesting и др.) задокументированы в разделе API → Модели.