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.
Что такое Liquidity Nexus
Liquidity Nexus — это singleton-аккаунт внутри программы Native DEX, в котором хранится ликвидность, принадлежащая протоколу, и из которого она размещается по пулам DEX. Это подсистема, через которую Areal Finance накапливает продуктивную книгу LP-позиций на собственном DEX, зарабатывает swap-комиссии на этих позициях и направляет реализованную прибыль в Казначейство Areal. В Nexus поступает капитал из двух вышестоящих программ:- 10% выручки OT в USDC — из
ownership_token::distribute_revenue - 15% доходности RWT в RWT — из
rwt_engine::claim_yield
Nexus — это собственный LP протокола. После того как токены попадают внутрь, принципал односторонний — нет инструкции, которая возвращает депонированный капитал к источнику. Единственный путь для принципала покинуть Nexus — это реализованная LP-прибыль, выведенная по Authority.
Подсистема в целом
Три уровня доверия
Каждая операция над Nexus гейтится ровно одной из трёх ролей. Роли непересекающиеся по дизайну — Authority не может размещать LP, Manager не может выводить прибыль, permissionless-вызыватель не может ни того, ни другого.| Уровень | Кошелёк | Может | Не может |
|---|---|---|---|
| Authority (Team Multisig) | Поле authority в Native DEX | Инициализировать Nexus, ротировать Manager, клеймить LP-награды, выводить реализованную прибыль | Размещать или закрывать LP-позиции, перемещать токены между аккаунтами Nexus |
| Manager (keypair бота) | LiquidityNexus.manager | Swap, add liquidity, remove liquidity капиталом Nexus | Переводить токены наружу из аккаунтов Nexus, ротировать сам себя, выводить любую прибыль |
| Permissionless | любой подписант | Триггерить USDC-канал депозита | Что-либо, что трогает LP-позиции или выводит токены из аккаунтов Nexus |
Инвариант principal-lock
Главное свойство безопасности подсистемы Nexus:
Для каждой стороны токена t ∈ {USDC, RWT} в любой момент времени: nexus_balance(t) ≥ total_deposited(t).
total_deposited монотонно неубывающее — оно может только расти, никогда не уменьшается. Поля пишутся исключительно двумя каналами депозитов, и в контракте нет инструкции, которая могла бы их уменьшить.
Единственный путь для токенов покинуть аккаунты Nexus с внешним назначением — это Authority-only вывод прибыли. Он валидирует amount ≤ nexus_balance(t) − total_deposited(t) и падает при нарушении. Иными словами, прибыль может покинуть Nexus, а принципал — нет, по конструкции, а не по политике.
Это намеренно односторонне. Капитал не может случайно протечь обратно к программе-источнику, и любой будущий «rebase»-механизм, перераспределяющий общий принципал между Казначейством и Nexus, должен быть отдельной, явной инструкцией с подписью Authority, добавленной в контракт.
Два канала депозита
Две вышестоящие программы маршрутизируют в Nexus разными паттернами. Оба обновляютtotal_deposited атомарно с SPL-трансфером, который перемещает токены — нет окна, в котором on-chain баланс Nexus и principal floor могли бы расходиться.
| Канал | Источник | Промежуточный аккаунт | Атомарность |
|---|---|---|---|
| USDC | OT distribute_revenue (доля 10%) | USDC ATA crank-кошелька | 1 TX — SPL-трансфер + обновление total_deposited_usdc |
| RWT | RWT claim_yield (доля 15%) | RWT ATA PDA LiquidityHolding в Yield Distribution | 1 TX — SPL-трансфер + CPI, пишущий total_deposited_rwt |
claim_yield пишет 15% RWT в RWT-аккаунт этой PDA, а Authority-callable инструкция в Yield Distribution дренирует её в Nexus за одну транзакцию — включая CPI, который обновляет principal floor Nexus в той же инструкции. Нет окна, в течение которого RWT лежит в Holding, а floor Nexus расходится с фактическим переводом. См. контрактную справку Yield Distribution для детали стейджинговой PDA и инструкций.
LP-операции под управлением Manager
Размещение капитала находится под контролем бота Manager. Он не может перевести токены наружу из аккаунтов Nexus в внешний кошелёк, но может разместить их в LP-позициях через DEX-инструкции, принимающие аккаунты Nexus как источник. Стандартные операции Manager:- Swap — ребаланс холдингов Nexus между USDC, RWT или любой стороной токена, поддерживаемой DEX
- Add liquidity — разместить капитал в существующем пуле, создав
LpPosition, владелец которой — PDA Nexus - Remove liquidity — забрать капитал обратно в аккаунты Nexus в нативных токенах
LiquidityNexus.manager. Если Authority отключил Manager (нулевой pubkey), каждая операция падает.
Действия Manager никогда не трогают principal floor, поэтому сами по себе они не могут нарушить инвариант principal-lock — они лишь перемещают токены между аккаунтами Nexus и резервами пулов. Реализованная прибыль и убыток накапливаются как разрыв между балансом Nexus и total_deposited.
Вывод прибыли — только Authority
LP-комиссии и реализованная прибыль на позициях Nexus клеймятся исключительно по Authority:- LP-награды за комиссии — когда позиции Nexus в пуле накапливают swap-награды, Authority клеймит их напрямую в RWT ATA Казначейства Areal через выделенную DEX-инструкцию. Principal floor при этом не трогается — награды никогда не считались принципалом.
- Реализованная прибыль — для любой стороны токена Authority может вывести до
nexus_balance(t) − total_deposited(t)(разрыв между текущими on-chain холдингами и principal floor). Инструкция падает при переполнении. Выводы оседают в Казначействе Areal.
authority Native DEX — по умолчанию Team Multisig.
Off-chain оператор
Бот Nexus Manager владеет keypair Manager и запускает периодический цикл принятия решений. Он читает on-chain состояние пулов, оценивает, нужно ли перевзвесить капитал Nexus между пулами или оставить как есть, и подаёт соответствующие swap- / add-liquidity- / remove-liquidity-транзакции. Бот по умолчанию работает в режиме dry-run для staging-проверки; для on-chain отправки требуется отдельный флаг. Резервирование multi-RPC, single-instance lock и pre-flight проверка SOL-баланса — часть operator-hardening. См. Off-Chain сервисы для операционных деталей. Каналы депозита не требуют Manager — USDC-канал permissionless, RWT-канал гейтится Authority. Manager — исключительно для размещения капитала после того, как депозиты приземлились.Границы
Nexus — это слой ликвидности, не yield-слой и не governance-слой. Чтобы trust-модель оставалась чистой, несколько смежных возможностей намеренно не входят в Nexus:- Нет вывода принципала. Нет инструкции, которая возвращает депонированный капитал к источнику. Любой будущий ребаланс общего принципала протокола между Казначейством и Nexus должен идти через отдельную, явную инструкцию с подписью Authority.
- Нет распределения yield. Дележ 70 / 15 / 15 доходности RWT настраивается на vault RWT Engine, а не на Nexus. Nexus видит свои 15% только после их прихода.
- Нет управления master-пулами. То, принимает ли master-пул user-side LP или только Nexus LP, — параметр пула, а не Nexus.
Связанные документы
- Ликвидность и нативный DEX — архитектура DEX и типы пулов, в которые Nexus размещает капитал
- Контракт Native DEX — состояние
LiquidityNexusи Manager-only / Authority-only инструкции - Контракт Yield Distribution — PDA
LiquidityHoldingи инструкция атомарного drain для RWT-канала - Контракт RWT Engine —
claim_yieldи дележ 70 / 15 / 15, питающий RWT-канал - Казначейство — где оседает прибыль Nexus
- Off-Chain сервисы — бот Nexus Manager