Skip to main content
이 페이지는 AI 자동 번역입니다. 모든 내용은 영문판을 기준으로 합니다.영문판 보기 →
이 항목은 2026-10-22에 예정된 CLMM 프로그램 업그레이드를 다룹니다. 배포 전에 raydium-clmm의 feat/create-customizable-pool-v2 브랜치(18f5db1 헤드)에 대해 검증되었습니다. 새로운 명령어 이름이나 계정 목록을 사용하기 전에 배포된 프로그램을 확인하세요.
2026-07-30 릴리스에서 CreatePermissionedPool이 추가되었으며, 이를 통해 호출자는 seed_index를 풀 PDA에 포함시켜 동일한 (amm_config, token_mint_0, token_mint_1)에 대해 둘 이상의 풀을 생성할 수 있었습니다. 이는 게이트되어 있었습니다. 지불자는 관리자가 발급한 Permission PDA를 보유해야 했습니다. 이번 릴리스에서는 해당 게이트를 제거합니다. 명령어는 **CreateCustomizablePoolV2**로 이름이 변경되고, 누구나 호출할 수 있으며, 전체 권한 메커니즘이 프로그램에서 삭제됩니다. 풀 수학, 스왑, 유동성, 한도 주문, 수수료 및 보상은 변경되지 않습니다.

통합자를 위한 요약

  • CreatePermissionedPool → CreateCustomizablePoolV2. 동일한 인수(CreateCustomizableParams, seed_index: u16)와 동일한 풀 주소 파생. Anchor 판별자가 이름과 함께 변경되므로, 이전 명령어에 대해 구축된 트랜잭션은 업그레이드 후 실패합니다. 새로운 IDL에 대해 다시 구축하세요.
  • permission 계정이 계정 목록에서 제거되었습니다. 슬롯 3에 있었으므로 amm_config부터의 모든 계정이 한 위치 위로 이동합니다. 새로운 계정 목록을 참조하세요.
  • 다중 풀 생성이 이제 무허가입니다. 모든 지불자가 0이 아닌 seed_index로 쌍과 수수료 계층에 대한 추가 풀을 생성할 수 있습니다. 쌍을 수수료 계층당 많은 CLMM 풀을 가질 수 있는 것으로 취급하세요. 이들은 누구든지 생성할 수 있습니다.
  • Permission, CreatePermissionPda 및 ClosePermissionPda가 제거되었습니다. 프로그램과 IDL은 더 이상 Permission 타입을 알지 못합니다.
  • IDL을 새로고침하세요. 37개 명령어와 53개 오류로 2개 명령어와 1개 계정 타입이 삭제됩니다.
  • 계정 레이아웃이 변경되지 않았고 오류 코드가 추가되지 않았습니다. PoolState.seed_index는 오프셋을 유지합니다. 의미만 “허가된 풀”에서 “모든 V2 풀”로 확대됩니다.

프로그램에서 변경된 사항

CreatePermissionedPool이 CreateCustomizablePoolV2로 이름 변경

핸들러는 새로운 이름 아래의 동일한 코드입니다. 여전히:
  • seed_index > 0을 요구합니다.
  • ["pool", amm_config, token_mint_0, token_mint_1, seed_index.to_le_bytes()]에서 풀을 파생합니다.
  • CreateCustomizablePool과 동일한 CreateCustomizableParams를 사용하므로 편측 수수료(collect_fee_on)와 동적 수수료 옵트인이 동일한 방식으로 작동합니다.
  • CreatePool과 동일한 Token-2022 지원 민트 검사를 적용합니다.
  • pool_creator를 pool_state.owner로 기록하고 seed_index를 PoolState에 씁니다.
  • PoolCreatedEvent를 내보냅니다.
Permission PDA 검사는 제거된 유일한 동작입니다.

CreateCustomizablePoolV2 계정 목록

remaining_accounts는 변경되지 않습니다. Token-2022 민트가 필요할 때 지원 민트 레지스트리 PDA와 enable_dynamic_fee = true일 때 마지막에 DynamicFeeConfig.
pool_creator는 인증되지 않습니다. 모든 지불자가 pool_state.owner에 모든 주소를 쓸 수 있습니다. 해당 주소는 풀에서 InitializeReward를 호출할 권리를 얻지만, 누가 생성했는지 증명하는 데 사용될 수 없습니다. V2 풀을 owner 필드로 순위를 매기거나, 레이블을 지정하거나, 신뢰하지 마세요.

제거됨: Permission, CreatePermissionPda, ClosePermissionPda

  • Permission 계정 타입(["permission", authority], 280바이트)이 프로그램에서 삭제됩니다.
  • CreatePermissionPda 및 ClosePermissionPda가 삭제되고, 이들에 서명할 수 있는 전용 permission_pda_admin 키도 삭제됩니다.
  • 업그레이드 전에 생성된 Permission PDA는 온체인에 남아 있습니다. 프로그램은 더 이상 이들을 읽지 않으며 이들을 닫는 명령어가 없습니다.

오류 코드

변경 없음. 6000–6052는 번호를 유지합니다. NotApproved(6000)는 더 이상 “서명자가 admin 또는 permission_pda_admin이 아님” 경우가 없습니다. 이러한 명령어가 제거되었기 때문입니다.

마이그레이션 참고 사항

  • 풀 생성자. CreatePermissionedPool에서 CreateCustomizablePoolV2로 전환하고, permission 계정을 삭제하고, 나머지 계정을 한 슬롯 위로 이동하세요. 더 이상 관리자 승인이 필요하지 않습니다.
  • 인덱서 및 라우터. PoolCreatedEvent에서 또는 PoolState 계정을 스캔하여 CLMM 풀을 인덱싱하세요. 4시드 PDA를 파생하지 마세요. 0이 아닌 seed_index를 가진 모든 풀에 대해 seed_index를 저장하세요. 주소를 다시 파생하려면 필요합니다. 이제 누구나 풀을 생성할 수 있으므로 더 많은 비정규 풀을 예상하고, 풀이 owner 때문에 공식이라고 가정하지 마세요.
  • UI. 쌍과 수수료 계층은 다양한 시작 가격을 가진 많은 풀을 가질 수 있습니다. 유동성과 풀 주소를 표시하고, 풀을 owner 때문에 공식으로 제시하지 마세요.
  • IDL 소비자. Permission, CreatePermissionPda 및 ClosePermissionPda에 대한 디코더 또는 클라이언트 코드를 제거하세요.

변경되지 않은 사항

  • 모든 계정 레이아웃, PoolState 포함 (seed_index 필드와 오프셋은 동일).
  • CreatePool 및 CreateCustomizablePool. 여전히 쌍과 계층당 단일 정규 풀을 생성하며, seed_index = [0, 0].
  • 업그레이드 전에 CreatePermissionedPool을 통해 생성된 풀. 주소, 상태 및 seed_index는 변경되지 않습니다.
  • 오류 코드, 스왑, 유동성, 수수료, 동적 수수료, 보상 및 한도 주문 동작.
  • 프로그램 ID.

업데이트된 페이지

  • products/clmm/instructions: 업그레이드 배너; 인벤토리 및 관리자 게이팅 행; 새로운 계정 목록이 있는 CreateCustomizablePoolV2 섹션.
  • products/clmm/accounts: 인벤토리에서 Permission 제거 및 폐기된 것으로 문서화; seed_index 설명; PDA 헬퍼 이름을 deriveCustomizablePoolV2로 변경; 라이프사이클 행.
  • products/clmm/overview: “새로운 기능” 참고.
  • security/admin-and-multisig: CLMM 테이블에서 permission_pda_admin 역할 제거.
  • reference/error-codes: NotApproved 설명.
  • reference/token-2022-support: CLMM 풀 생성 경로.
  • sdk-api/anchor-idl: CLMM 명령어 수.
  • protocol-overview/versions-and-migration: CLMM 업그레이드 이력 글머리.
검증 대상: raydium-clmm 브랜치 feat/create-customizable-pool-v2 (18f5db1): instructions/create_customizable_pool_v2.rs, instructions/mod.rs, instructions/admin/mod.rs, states/mod.rs, states/pool.rs, lib.rs, 그리고 삭제된 admin/create_permission_pda.rs, admin/close_permission_pda.rs, states/permission.rs.