이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
이것은 문서의 변경 로그입니다. 프로젝트 출시 이후 이 페이지들의 업데이트 기록입니다. 아래의 각 릴리스는 자체 항목으로 연결되어 있으며, 전체 요약, 영향을 받은 장, 그리고 검증 날짜를 확인할 수 있습니다. 프로토콜 자체의 역사적 타임라인은
introduction/history-and-milestones을 참고하세요.릴리스
CLMM: CreateCustomizablePoolV2로 멀티풀 생성 개방
CreatePermissionedPool이 CreateCustomizablePoolV2로 이름이 바뀌고 Permission PDA 게이트가 제거되어, 모든 지불자가 동일한 페어와 수수료 티어에 대해 seed_index 파생 주소에서 추가 풀을 생성할 수 있습니다. 인자와 풀 주소 파생은 변경되지 않지만 판별자가 변경되고 permission 계정이 슬롯 3을 떠나므로 이전 명령어에 대해 빌드된 클라이언트는 다시 빌드해야 합니다. pool_creator는 인증되지 않으므로 V2 풀의 owner는 생성자를 증명하지 않습니다. Permission 계정, CreatePermissionPda, ClosePermissionPda 및 permission_pda_admin 키가 제거되었으며, 이전에 생성된 Permission PDA는 온체인에 비활성 데이터로 남아 있습니다. 계정 레이아웃이나 오류 코드는 변경되지 않았습니다. IDL이 37개 명령어로 감소합니다.전체 항목 읽기 →CLMM: Anchor 1.0, 초과 램포트 복구 및 고정 수수료 소유자
CLMM이 Agave
3.1.10에서 Anchor 1.0.2로 이동하며, 이는 CPMM과 LaunchLab이 2026-09-09에 수행한 것과 동일한 이동입니다. 두 공개 CPI 크레이트 모두 =1.0.2를 고정하므로 단일 프로그램이 CPMM과 CLMM으로 CPI할 수 있습니다. 새로운 관리자 CollectExcessLamports는 SIMD-0437로 해제된 렌트를 반환합니다. 호출당 하나의 풀을 스윕합니다: PoolState PDA는 자신의 볼트와 보상 볼트에 서명하고, wSOL 볼트는 SyncNative / UnwrapLamports 왕복을 거치며, remaining_accounts의 모든 CLMM 소유 계정은 렌트 최소값까지 차감됩니다. CreateAmmConfig는 이제 서명자 대신 하드코딩된 protocol_fee_owner 및 fund_fee_owner 키를 작성합니다. 메인넷에서 이들은 모든 21개 구성에 이미 저장된 키이며, 기존 구성은 다시 작성되지 않습니다. 6052 추가됨. 사용자 대면 명령어나 계정 레이아웃은 변경되지 않았습니다.전체 항목 읽기 →CPMM: 프로토콜이 생성자 수수료의 일부를 가져갑니다
CPMM은 이제 생성자 수수료의 일부를 유지할 수 있습니다. 분할은 수수료가 수집될 때 적용되며, 수수료가 부과될 때가 아닙니다: 스왑은 여전히 전체 생성자 수수료를
creator_fees_token*에 적립하고, CollectCreatorFee / CollectCreatorFeePermissionless는 일부를 풀의 기존 protocol_fees_token* 카운터로 이동하고 생성자에게 나머지를 지불합니다 — 내림하므로 더스트는 생성자와 함께 남습니다. 비율은 새로운 AmmConfig.creator_fee_share_rate (패딩에서 잘라냄; 계정은 여전히 236바이트이지만 이전 padding[0]은 이제 활성 필드) 또는 이를 재정의하는 생성자별 CreatorFeeShare PDA에서 나오며, 새로운 관리자 CreateCreatorFeeShare / CloseCreatorFeeShare로 관리됩니다. 생성자 수수료 클라이언트의 경우 주의: 두 수집 명령어 모두 계정 목록 끝에 추가된 새 계정을 가져갑니다 — 기존 계정은 위치를 유지하지만 새 계정은 필수이므로 업그레이드 전 트랜잭션은 누락된 계정으로 거부됩니다. UpdateAmmConfig는 param = 8을 얻습니다. PoolState, 스왑 수학 및 k 확인은 변경되지 않으며 오류 코드는 추가되지 않았습니다. 함께 탑승: CollectExcessLamports의 2패스 정렬 수정.전체 항목 읽기 →LaunchLab: Anchor 1.0, 초과 램포트 복구 및 전환 게이트 종료
LaunchLab이 Agave
3.1.10에서 Anchor 1.0.2로 이동하고 전환 스캐폴딩을 폐기합니다. 더 이상 사용되지 않는 Initialize는 이제 NotApproved로 무조건 실패합니다. MigrateToAmm은 마이그레이션 지갑에 대해 하드 브레이킹: 세 인자와 9개의 OpenBook 계정이 모두 제거되었으며, AMM v4의 자체 OpenBook 제거를 따릅니다. 프로그램은 더 이상 CPI로 마켓을 초기화하지 않습니다. get_upgrade_timestamp 클록 게이트가 삭제되므로 3개의 거래 remaining_accounts는 무조건 필수입니다 (system_program 슬롯이 이제 검증됨), MigrateToCpswap은 항상 허가된 CPMM 경로를 사용하며, InitializeWithToken2022는 amm_fee_on 제한을 제거합니다. 새로운 관리자 CollectExcessLamports는 SIMD-0437로 해제된 렌트를 반환합니다 — 소스 계정은 3개의 볼트 권한 PDA 중 어느 것이 소유하는지에 따라 그룹화되어야 합니다. 3개의 MigrateToCpswap 주소 제약이 명령어 본문으로 이동하여 2012를 2502로 변경합니다. 6031 추가됨. 계정 레이아웃, 거래 명령어 또는 수수료 동작은 변경되지 않았습니다.전체 항목 읽기 →CPMM: Anchor 1.0, 초과 램포트 복구 및 고정 수수료 소유자
CPMM이 Agave
3.1.10에서 Anchor 1.0.2로 이동하고 SIMD-0437로 해제된 렌트를 볼트, LP 민트 및 PDA에서 반환하는 관리자 CollectExcessLamports를 추가합니다 — 래핑된 SOL 볼트 포함, SyncNative / UnwrapLamports 왕복을 통해 래핑된 잔액을 변경하지 않은 채로 둡니다. 3가지 동작 변경이 함께 탑승합니다: CreateAmmConfig는 이제 서명자 대신 하드코딩된 protocol_fee_owner 및 fund_fee_owner 키를 작성합니다 (기존 구성은 마이그레이션되지 않습니다 — 필드를 읽으세요), 하드코딩된 4주소 Token-2022 MINT_WHITELIST가 제거되어 SupportMintAssociated 레지스트리 PDA가 유일한 남은 바이패스이며, ClosePermissionPda는 이제 전용 부여 권한을 수락합니다. 6015 추가됨. 사용자 대면 명령어나 계정 레이아웃은 변경되지 않았습니다.전체 항목 읽기 →AMM v4: Solana 3.0 의존성 및 초과 램포트 복구
AMM v4는
solana-program 3.0.0, spl-token 9.0.0, spl-associated-token-account 8.0.0 및 새로운 solana-system-interface 크레이트에 대해 다시 빌드하고, SIMD-0437로 해제된 렌트를 반환하는 관리자 전용 WithdrawExcessLamports (태그 18)를 추가합니다. 모든 거래자 및 LP 대면 명령어는 계정, 인자 및 수학을 유지하며, 릴리스의 아무것도 브레이킹이 아닙니다: CreateConfigAccount는 후행 렌트 시스바를 읽기를 중단했지만 여전히 이전 5계정 목록을 수락합니다. AmmError는 코드 60을 얻습니다 (0이 아닌 6000에서 번호 매김).전체 항목 읽기 →LaunchLab: 플랫폼 곡선 규칙이 곡선 매개변수 화이트리스트를 대체합니다
시작 매개변수 제한이
PlatformConfig에서 구성별 PlatformCurveRule 계정으로 이동합니다. 규칙은 19개 시작 매개변수에 대한 최대 10개의 확인 그룹을 최대 25개의 (field, op, value) 제약으로 보유하며, Eq / Gte / Lte / Neq — 따라서 플랫폼은 마침내 값 대역, 대체 티어, 졸업 평가 상한, 마이그레이션 하한, 토큰 유형 게이팅 또는 날짜에 따라 전환되는 그룹을 표현할 수 있으며, 동등성 전용 화이트리스트는 이 중 어느 것도 할 수 없습니다. PlatformConfig는 944바이트 크기를 유지합니다: restrict_curve_param, curve_rule_manager 및 제거된 벡의 길이 접두사가 모두 패딩에서 나옵니다. 디코더는 후행 Vec<PlatformCurveParam>을 제거해야 하며, 시작 빌더는 플래그가 켜져 있는 동안 규칙 PDA를 remaining_accounts에 추가해야 합니다. 2개 명령어 제거, 4개 추가, 2개 UpdatePlatformConfig 변형 추가, 6024–6030 추가됨. IDL 새로고침 필요. SDK는 2개의 순수 오프체인 확인을 제공하므로 생성자는 되돌려진 트랜잭션에서 규칙을 배울 필요가 없으며, 항목은 메인넷에서 플래그를 활성화하기 전에 데브넷 리허설을 문서화합니다.전체 항목 읽기 →LaunchLab: 플랫폼이 민트 생성에서 보류 중인 권한을 보유합니다
InitializeWithToken2022는 이제 PlatformConfig.transfer_fee_extension_auth를 시작 authority PDA 대신 새 기본 민트의 withdraw_withheld_authority에 작성하므로 플랫폼은 졸업을 기다리지 않고 본딩 곡선 단계 중에 보류 중인 이전 수수료를 스윕할 수 있습니다 — 프로그램 자체는 보류 중인 인출 명령어가 없습니다. MigrateToCpswap은 PDA가 여전히 보유할 때만 해당 권한을 재할당하므로 졸업이 두 세대의 민트에 대해 작동합니다. transfer_fee_config_authority는 여전히 졸업 시에만 이동하므로 시작 중에 transfer_fee_extension_auth를 회전하면 조용히 두 권한을 다른 키에 남깁니다. 계정 레이아웃, 명령어, 인자 또는 오류 코드는 변경되지 않았습니다.전체 항목 읽기 →LaunchLab: 플랫폼 수수료 비율 상한이 500 bps로 인상됩니다
플랫폼
fee_rate 상한이 이를 검증하는 두 경로 모두에서 50000 (500 bps)으로 이동합니다. CreatePlatformConfig는 프로그램의 첫 릴리스 이후 10000 (100 bps)으로 제한되었습니다; UpdatePlatformConfig는 2026-01-27 이후 25000 (250 bps)으로 제한되었습니다. 두 확인이 이제 일치하므로 허가된 비율로 생성된 플랫폼도 이 비율로 업데이트할 수 있습니다 — AllInfo 대량 변형을 포함하여, 다른 모든 필드를 다시 작성하는 동안 fee_rate를 다시 검증합니다. 두 경로는 여전히 다른 오류를 발생시킵니다 (InvalidInput 생성 시, InvalidPlatformInfo 업데이트 시). 계정 레이아웃, 명령어 또는 오류 코드는 변경되지 않았으며, 기존 플랫폼이나 시작은 다시 가격이 책정되지 않습니다. GlobalConfig.max_share_fee_rate는 100 bps로 유지되며 거래당 추천 share_fee_rate만 제한합니다.전체 항목 읽기 →LaunchLab: Token-2022 견적 민트
시작은 이제 Token-2022 민트로 견적될 수 있습니다.
CreateConfig, InitializeV2, InitializeWithToken2022, 4개의 스왑 명령어 및 모든 수수료 청구는 견적 프로그램 슬롯에서 두 토큰 프로그램 중 하나를 수락합니다; 더 이상 사용되지 않는 Initialize는 레거시 전용으로 유지됩니다. 스왑 슬리피지 경계는 이제 지불자가 실제로 지불하거나 받는 것과 비교되며, 견적 민트의 이전 수수료를 차감합니다. PoolState.token_program_flag bit1이 의미 있게 되므로 전체 바이트를 0에 대해 테스트하는 디코더는 레거시 기본 민트를 Token-2022로 잘못 읽습니다. MigrateToCpswap은 두 토큰 프로그램 계정을 token_program / token_program_2022로 이름을 바꾸고, 6023은 CalculateOverflow에 재사용됩니다.전체 항목 읽기 →LaunchLab: CPMM 전용 시작 및 플랫폼 구성 제어
새로운 시작 초기화는 이제 CPMM을 요구하는 반면 레거시 AMM v4 바운드 상태는 마이그레이션 가능하게 유지됩니다. 이 릴리스 이전에
creator_scale은 생성자 소유 수수료 키를 생성했습니다; 업그레이드 후 실행된 CPMM 마이그레이션은 대신 platform_scale + creator_scale을 하나의 플랫폼 소유 수수료 키 공유로 통합합니다. 플랫폼은 또한 자신의 PlatformAllowConfig PDA로 시작을 제한할 수 있으며, 마이그레이션 빌더는 두 CPMM 지원 민트 PDA를 추가해야 합니다.전체 항목 읽기 →CLMM: 제한된 발급자 포지션 NFT 동결
새로운 CLMM 포지션 NFT 민트는 풀을 동결 권한으로 사용하지만 토큰 계정은 기본적으로 동결되지 않은 상태로 유지됩니다. 동결은
OpenPositionV2 또는 OpenPositionWithToken22Nft에서만 발생하며, 기본 볼트 민트 중 하나의 동결 권한이 제한된 발급자 목록과 일치할 때입니다. 일치하는 포지션은 전송하거나 소유자를 변경할 수 없지만 여전히 유동성을 관리할 수 있습니다. 해당 ClosePosition 호출은 CLMM이 원자적으로 해동, 소각 및 종료할 수 있도록 풀을 추가해야 합니다. 기존 포지션은 변경되지 않습니다.전체 항목 읽기 →CPMM: 허가 없는 생성자 수수료 수집
추가
CollectCreatorFeePermissionless 명령어를 통해 모든 지불자가 모든 적립된 생성자 수수료를 스윕할 수 있으며, 수혜자와 두 토큰 목적지를 PoolState.pool_creator 및 생성자의 정규 ATA로 제한합니다. 원래 생성자 서명 경로는 변경되지 않습니다. CreatePermissionPda는 또한 전용 부여 권한을 수락하는 반면 ClosePermissionPda는 관리자 전용으로 유지됩니다.전체 항목 읽기 →CLMM: 허가된 멀티풀 및 한계 주문 동결 계정 가드
2개의 추가, 역호환 CLMM 프로그램 업데이트.
CreatePermissionedPool은 클라이언트 제공 0이 아닌 seed_index를 풀 PDA 시드에 접으므로 화이트리스트된 운영자 (하나의 Permission PDA를 보유하는 운영자)가 (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: 한계 주문, 단측 수수료, 동적 수수료
3개의 옵트인, 역호환 CLMM 기능: 1급 한계 주문 (
limit_order_admin 정산 키퍼 포함), 단측 수수료 수집 (CollectFeeOn) 및 변동성 추적 동적 수수료. CreateCustomizablePool, PoolState 재구성 (인덱서 브레이킹 변경), 새로운 TickState 필드, 11개의 새로운 오류 코드 (숫자 이동 포함) 및 일치하는 SDK / API 추가를 추가합니다.전체 항목 읽기 →초기 발행
Raydium 문서 세트의 첫 공개 릴리스로, 라이브 메인넷-베타 배포 및
@raydium-io/raydium-sdk-v2@0.2.42-alpha에 대해 검증되었습니다.전체 항목 읽기 →문서 작성 규칙
- 버전 관리: 이 문서는 달력 기반 버전 관리(YYYY-MM-DD)를 사용합니다. 각 업데이트는 새로운 항목 페이지를 추가하고 위의 타임라인 맨 위에 새로운 행을 추가합니다.
- 릴리스당 하나의 페이지: 모든 릴리스 요약은
reference/changelog/아래의 자체 페이지에 있으므로 이 인덱스는 간결하게 유지되고 각 항목은 독립적으로 링크할 수 있습니다. - 검증된 날짜: 모든 항목은 온체인/API 상태 및 프로그램 소스에 대해 마지막으로 교차 검증한 시점을 기록합니다. 명시되지 않은 경우 항목의 주요 날짜로 간주합니다.
- 주요 변경 사항: 영향을 받는 페이지에 상자로 표시된 경고로 표시되고 항목에 태그가 지정됩니다.
- 범위: 이 변경 로그는 문서 세트 자체를 다룹니다. 프로토콜의 역사적 타임라인은
introduction/history-and-milestones에 있으며 “Raydium에서 X가 언제 발생했는가”에 대한 신뢰할 수 있는 출처입니다.
수정 사항
이 문서에서 오류를 발견하면 문서 저장소에서 이슈를 열거나 풀 리퀘스트를 제출해 주세요. 수정 사항은 변경 로그 항목으로 기록됩니다.참고 자료
introduction/history-and-milestones— 프로토콜의 타임라인입니다.security/audits— 감사 이력입니다.ray/protocol-fees— 프로토콜 수수료 분배입니다.reference/program-addresses— 프로그램 ID 신뢰할 수 있는 출처입니다.

