Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →
Это журнал изменений документации — запись обновлений этих страниц с момента запуска проекта. Каждый релиз ниже ссылается на собственную запись; откройте её для полного резюме, затронутых глав и даты проверки. Для собственной исторической хронологии протокола см.
introduction/history-and-milestones.Релизы
LaunchLab: Anchor 1.0, восстановление избыточных lamports и завершение переходных шлюзов
LaunchLab переходит на Anchor
1.0.2 на Agave 3.1.10 и отказывается от своего переходного каркаса. Устаревший Initialize теперь безусловно завершается с ошибкой NotApproved. MigrateToAmm — это критическое изменение для кошелька миграции: все три аргумента и девять учётных записей OpenBook удалены, следуя собственному удалению OpenBook в AMM v4, и программа больше не инициализирует рынок через CPI. Часовой шлюз get_upgrade_timestamp удалён, поэтому три remaining_accounts торговли теперь безусловно требуются (с проверкой слота system_program), MigrateToCpswap всегда использует путь с разрешением CPMM, а InitializeWithToken2022 отказывается от ограничения amm_fee_on. Новая административная команда CollectExcessLamports возвращает аренду, освобождённую SIMD-0437 — учтите, что исходные учётные записи должны быть сгруппированы по тому, какой из трёх PDA органов управления хранилищем их владеет. Три ограничения адреса MigrateToCpswap перемещены в тело инструкции, изменяя 2012 на 2502. Добавлен 6031. Макет учётной записи, инструкция торговли или поведение комиссии не изменились.Читать полную запись →CPMM: Anchor 1.0, восстановление избыточных lamports и исправленные владельцы комиссий
CPMM переходит на Anchor
1.0.2 на Agave 3.1.10 и добавляет административную команду CollectExcessLamports, которая возвращает аренду, освобождённую SIMD-0437 из хранилищ, LP-минтов и PDA — включая завёрнутые SOL-хранилища через раунд SyncNative / UnwrapLamports, оставляя завёрнутый баланс нетронутым. Три поведенческих изменения идут вместе: CreateAmmConfig теперь записывает жёстко закодированные ключи protocol_fee_owner и fund_fee_owner вместо подписывающего (существующие конфигурации не мигрируются — прочитайте поля), жёстко закодированный четырёхадресный MINT_WHITELIST Token-2022 удалён, поэтому PDA реестра SupportMintAssociated — единственный оставшийся обход, и ClosePermissionPda теперь принимает выделенный орган выдачи разрешений. Добавлен 6015. Никакая пользовательская инструкция или макет учётной записи не изменились.Читать полную запись →AMM v4: зависимости Solana 3.0 и восстановление избыточных lamports
AMM v4 перестраивается для
solana-program 3.0.0, spl-token 9.0.0, spl-associated-token-account 8.0.0 и новой крейта solana-system-interface, и добавляет только для администратора WithdrawExcessLamports (тег 18), который возвращает аренду, освобождённую SIMD-0437. Каждая инструкция для трейдеров и LP сохраняет свои учётные записи, аргументы и математику, и ничего в релизе не является критическим: CreateConfigAccount перестал читать свой завершающий sysvar аренды, но всё ещё принимает старый список из пяти учётных записей. AmmError получает код 60 (нумеруется с 0, а не с 6000).Читать полную запись →LaunchLab: правила кривой платформы заменяют белый список параметров кривой
Ограничения параметров запуска переходят с
PlatformConfig в учётные записи PlatformCurveRule для каждой конфигурации. Правило содержит до 10 групп проверок из до 25 ограничений (field, op, value) над 19 параметрами запуска, с Eq / Gte / Lte / Neq — так платформа может наконец выразить диапазон значений, альтернативные уровни, крышку оценки выпуска, минимум миграции, шлюз типа токена или группу, которая переключается по дате, ничего из чего белый список только с равенством не мог. PlatformConfig сохраняет размер 944 байта: restrict_curve_param, curve_rule_manager и префикс длины удалённого вектора выходят из заполнения. Декодеры должны отбросить завершающий Vec<PlatformCurveParam>, а строители запусков должны добавить PDA правила в remaining_accounts пока флаг включен. Две инструкции удалены, четыре добавлены, два варианта UpdatePlatformConfig добавлены, добавлены 6024–6030. Требуется обновление IDL. SDK поставляется с двумя чистыми внецепочечными проверками, так что создатель никогда не должен узнавать правило из отменённой транзакции, и запись документирует репетицию devnet перед включением флага на mainnet.Читать полную запись →LaunchLab: платформа держит орган вывода удержанных средств с момента создания минта
InitializeWithToken2022 теперь записывает PlatformConfig.transfer_fee_extension_auth в withdraw_withheld_authority нового базового минта вместо PDA запуска authority, так что платформа может собирать удержанные комиссии за передачу во время фазы кривой связывания, а не ждать выпуска — сама программа не имеет инструкции вывода удержанных средств. MigrateToCpswap переназначает этот орган только когда PDA всё ещё его держит, что сохраняет выпуск работающим для минтов обоих поколений. transfer_fee_config_authority всё ещё переходит только при выпуске, поэтому ротация transfer_fee_extension_auth в середине запуска молча оставляет два органа на разных ключах. Макет учётной записи, инструкция, аргумент или код ошибки не изменились.Читать полную запись →LaunchLab: потолок ставки комиссии платформы поднят до 500 bps
Потолок
fee_rate платформы переходит на 50000 (500 bps) на обоих путях, которые его проверяют. CreatePlatformConfig был ограничен 10000 (100 bps) с первого релиза программы; UpdatePlatformConfig был ограничен 25000 (250 bps) с 2026-01-27. Два проверки теперь согласуются, так что платформа, созданная с любой разрешённой ставкой, также может быть обновлена с ней — включая через вариант AllInfo массового обновления, который переподтверждает fee_rate при переписывании каждого другого поля. Два пути всё ещё вызывают разные ошибки (InvalidInput при создании, InvalidPlatformInfo при обновлении). Макет учётной записи, инструкция или код ошибки не изменились, и никакая существующая платформа или запуск не переоценивается. GlobalConfig.max_share_fee_rate остаётся на 100 bps и ограничивает только реферальную share_fee_rate за транзакцию.Читать полную запись →LaunchLab: минты котировок Token-2022
Запуск теперь может быть котирован в минте Token-2022.
CreateConfig, InitializeV2, InitializeWithToken2022, четыре инструкции swap и каждое требование комиссии принимают любую программу токена в своём слоте программы котировки; устаревший Initialize остаётся только для наследия. Границы проскальзывания swap теперь сравниваются с тем, что плательщик фактически платит или получает, за вычетом комиссии за передачу минта котировки. Бит1 PoolState.token_program_flag становится значимым, поэтому декодеры, которые тестируют весь байт против 0, неправильно читают наследственный базовый минт как Token-2022. MigrateToCpswap переименовывает свои две учётные записи программы токена в token_program / token_program_2022, и 6023 переиспользуется для CalculateOverflow.Читать полную запись →LaunchLab: запуски только CPMM и элементы управления конфигурацией платформы
Новая инициализация запуска теперь требует CPMM, в то время как состояние, привязанное к наследственному AMM v4, остаётся мигрируемым. До этого релиза
creator_scale создавал ключ Fee Key, принадлежащий создателю; миграции CPMM, выполненные после обновления, вместо этого консолидируют platform_scale + creator_scale в один ключ Fee Key, принадлежащий платформе. Платформы также могут ограничивать запуски своими собственными PDA PlatformAllowConfig, и строители миграции должны добавить оба PDA поддержки минта CPMM.Читать полную запись →CLMM: замораживание NFT позиции с ограниченным издателем
Новые минты NFT позиции CLMM используют свой пул в качестве органа замораживания, но их учётные записи токена остаются незамороженными по умолчанию. Замораживание происходит только на
OpenPositionV2 или OpenPositionWithToken22Nft, когда орган замораживания любого из основных минтов хранилища совпадает со списком издателей с ограничениями. Совпадающая позиция не может передаваться или менять владельца, но всё ещё может управлять ликвидностью. Её вызов ClosePosition должен добавить пул, чтобы CLMM мог разморозить, сжечь и закрыть атомарно. Существующие позиции остаются без изменений.Читать полную запись →CPMM: сбор комиссии создателя без разрешения
Дополнительная инструкция
CollectCreatorFeePermissionless позволяет любому плательщику собрать все накопленные комиссии создателя, одновременно ограничивая бенефициара и оба назначения токена на PoolState.pool_creator и канонические ATA создателя. Исходный путь, подписанный создателем, остаётся без изменений. CreatePermissionPda также принимает выделенный орган выдачи разрешений, в то время как ClosePermissionPda остаётся только для администратора.Читать полную запись →CLMM: пулы с разрешением и защита замороженного счёта для лимитных ордеров
Два дополнительных, обратно совместимых обновления программы CLMM.
CreatePermissionedPool складывает предоставленный клиентом ненулевой seed_index в семена PDA пула, позволяя внесённому в белый список оператору (тому, кто держит PDA Permission) создавать несколько пулов на (config, mint0, mint1) — так что ID пула больше не является каноническим для пары. Новые административные инструкции CreatePermissionPda / ClosePermissionPda управляют этими разрешениями, и PoolState получает поле seed_index (вырезанное из заполнения, без изменения размера). Отдельно, OpenLimitOrder теперь принимает учётные записи стороны вывода и отклоняет ордера, чьи входные или выходные учётные записи токена заморожены (NotApproved).Читать полную запись →AMM v4: удаление зависимости OpenBook / Serum
AMM v4 удаляет свою давно неиспользуемую зависимость OpenBook/Serum, все CPI книги заказов и мёртвые инструкции создания рынка.
SwapBaseIn / SwapBaseOut, Deposit и Withdraw сохраняют свои макеты (удалённые учётные записи рынка теперь игнорируются, не проверяются); критическое изменение WithdrawPnl (17 → 10, без совместимости) и SetParams (сокращённые учётные записи + переномерованный param); и Initialize, PreInitialize, MonitorStep, MigrateToOpenBook, WithdrawSrm, SimulateInfo, AdminCancelOrders больше не вызываются. Макеты учётных записей в цепи и коды ошибок остаются стабильными; мигрируйте свопы на точки входа V2.Читать полную запись →Stable AMM: удаление мёртвого кода OpenBook (рынка)
Stable AMM удаляет свои давно неиспользуемые учётные записи и код создания рынка OpenBook. Меньшие макеты
SwapBaseIn / SwapBaseOut (18 → 9), Deposit (14 → 12) и Withdraw (21/22 → 12) (старые макеты всё ещё совместимы); критическое изменение WithdrawPnl (16 → 10, без совместимости); отменённая реферальная комиссия; и упрощённая формула активов пула только для хранилища. Большинство других инструкций Stable больше не вызываются.Читать полную запись →CLMM: лимитные ордера, односторонняя комиссия, динамическая комиссия
Три дополнительные, обратно совместимые возможности CLMM: лимитные ордера первого класса (с хранителем расчётов
limit_order_admin), сбор односторонней комиссии (CollectFeeOn) и отслеживание волатильности динамическая комиссия. Добавляет CreateCustomizablePool, переформатирование PoolState (критическое изменение для индексатора), новые поля TickState, одиннадцать новых кодов ошибок (с числовым сдвигом) и соответствующие добавления SDK / API.Читать полную запись →Первоначальная публикация
Первый публичный релиз набора документации Raydium, проверенный на соответствие развёртываниям mainnet-beta в реальном времени и
@raydium-io/raydium-sdk-v2@0.2.42-alpha.Читать полную запись →Соглашения документации
- Версионирование: эта документация использует календарное версионирование (YYYY-MM-DD). Каждое обновление добавляет новую страницу записи и новую строку в начало хронологии выше.
- Одна страница на релиз: каждое резюме релиза находится на собственной странице в
reference/changelog/, поэтому этот индекс остаётся коротким и каждая запись независимо ссылаема. - Дата проверки: каждая запись записывает, когда содержание было последний раз перепроверено на соответствие состоянию в цепи / API и исходному коду программы. Если не указано, предположите дату основной записи.
- Критические изменения: выделены в прямоугольном предупреждении на затронутых страницах и помечены в записи.
- Охват: этот журнал изменений охватывает сам набор документации. Собственная историческая хронология протокола находится в
introduction/history-and-milestonesи является источником истины для «когда X произошло на Raydium».
Исправления
Если вы найдёте ошибку в этой документации, пожалуйста, откройте issue или pull request в репозитории документации. Исправления регистрируются как записи журнала изменений.Указатели
introduction/history-and-milestones— собственная хронология протокола.security/audits— история аудитов.ray/protocol-fees— разделение комиссий протокола.reference/program-addresses— источник истины для адресов программ.

