Documentation Index
Fetch the complete documentation index at: https://docs.areal.finance/llms.txt
Use this file to discover all available pages before exploring further.
Update1 мая 2026
Обзор
Страница контракта RWT Engine обновлена и теперь отражает: 15% доля ликвидности, формируемаяclaim_yield, больше не попадает в RWT ATA, принадлежащий крэнку. Она пишется в RWT-аккаунт PDA LiquidityHolding в программе Yield Distribution и достигает Liquidity Nexus через атомарный drain в одну транзакцию (withdraw_liquidity_holding), который обновляет principal floor Nexus в той же инструкции.
Экономический дележ 70 / 15 / 15 не изменился. Изменился стейджинговый аккаунт и гарантия атомарности на RWT-канале депозита в Nexus.
Почему изменение
Раньше 15% доля депонировалась в RWT ATA, контролируемый крэнком, и отдельный вызовnexus_deposit перемещал её в Nexus. Между двумя транзакциями было окно, в котором on-chain баланс Nexus и total_deposited_rwt могли расходиться, и в котором зависший крэнк или сбой RPC мог оставить RWT во владении кошелька крэнка, а не протокола.
Новый стейджинговый путь полностью устраняет это окно: claim_yield пишет напрямую в PDA, принадлежащую контракту (без внешнего keypair), а drain в Nexus — это одна транзакция, объединяющая SPL-трансфер с CPI на обновление principal floor. Инвариант principal-lock nexus_balance(t) ≥ total_deposited(t) поэтому держится без промежуточных окон на RWT-канале.
Что изменилось на странице
Поле liquidity_destination
Оба упоминания на странице (Accordion инструкции update_distribution_config и таблица состояния RwtDistributionConfig) теперь описывают destination как RWT ATA PDA LiquidityHolding в Yield Distribution, с явной ссылкой на атомарный drain withdraw_liquidity_holding.
claim_yield Логика шаг 5
Описание расчёта liquidity_share теперь явно указывает стейджинговый аккаунт и последующий атомарный drain в Nexus.
RwtVault.areal_fee_destination — dual-role alias имени аккаунта
Строка поля состояния теперь явно документирует: тот же on-chain Pubkey фигурирует под именем аккаунта dao_fee_account в mint_rwt, и обработчик валидирует dao_fee_account.key == vault.areal_fee_destination. Раньше это было недокументированной convention именования аккаунтов в Anchor; явная фиксация предотвращает предположение читателя о существовании двух разных fee-аккаунтов.
Сводка потоков токенов
Строка 15% RWT обновлена и отражает новый поток:Vault RWT → RWT ATA LiquidityHolding → Nexus через withdraw_liquidity_holding (1 TX, атомарно). Колонка триггера обновлена на Крэнк → Authority, так как drain — это Authority-gated инструкция.
Cross-link «См. также»
Новая секция ссылается на архитектурную страницу Liquidity Nexus и контракт Yield Distribution.Без изменений
- Дележ доходности 70 / 15 / 15 не изменился. Дефолты
book_value_bps,liquidity_bps,protocol_revenue_bpsостаются7,000 / 1,500 / 1,500. - Сигнатура инструкции
claim_yield, CPI-вызов claim в Yield Distribution и расчётprotocol_revenue_shareкак остатка не изменены. - Семантика
mint_rwt, дележ 0.5% mint fee и неизменяемостьareal_fee_destinationне изменены.
Миграция
Это синхронизация документации, а не миграция стейта на живом деплое. Реализации, ориентирующиеся на спеку, должны:- Трактовать
liquidity_destinationкак RWT ATA, выводимый из PDA и принадлежащий программе Yield Distribution (а именно — RWT-аккаунт PDALiquidityHolding), а не как ATA кошелька. - Запускать канал депозита одним вызовом
withdraw_liquidity_holdingот Authority, а не отдельнымnexus_depositпослеclaim_yield.
Связанные документы
- Контракт RWT Engine — страница, обновлённая этой записью
- Liquidity Nexus — обзор подсистемы канала депозита
- Контракт Yield Distribution — стейджинговая PDA и инструкция атомарного drain (полная спецификация — в следующей записи changelog)