Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →
Dieser Eintrag behandelt ein bevorstehendes LaunchLab-Programm-Update. Er wurde vor der Bereitstellung gegen den lokalen Release-Branch verifiziert. Bestätigen Sie das bereitgestellte Programm und die veröffentlichte IDL, bevor Sie die neuen Pfade in der Produktion aktivieren.
GlobalConfig-Erstellung, Pool-Initialisierung, die vier Swap-Instruktionen, alle Fee-Claims und CPMM-Migration — wird nun entweder Token-Programm akzeptiert, und die Swap-Instruktionen berücksichtigen die Transfer-Gebühr des Quote-Mints.
TL;DR für Integratoren
- Quote-Mints können Token-2022 sein.
CreateConfigakzeptiert einen Token-2022quote_token_mint, undInitializeV2/InitializeWithToken2022akzeptieren entweder Token-Programm im Quote-Program-Slot. Die Kontenreihenfolge ändert sich nicht — nur der Wert, den Sie in diesen Slot übergeben. - Das veraltete
Initializeist weiterhin nur Legacy. Sein Quote-Program-Konto ist weiterhin auf SPL Token typisiert, daher kann eine Config, deren Quote-Mint Token-2022 ist, nur überInitializeV2oderInitializeWithToken2022gestartet werden. - Slippage-Grenzen beziehen sich auf das, was der Zahler tatsächlich zahlt und erhält.
minimum_amount_outundmaximum_amount_inwerden nun gegen den Betrag netto der Transfer-Gebühr des Quote-Mints verglichen, nicht gegen den Betrag, den der Vault bewegt hat. Bestehende Quoting-Logik unterschätzt Kosten und überschätzt Erlöse bei einem gebührenbelasteten Quote-Mint. PoolState.token_program_flagBit1 wird aussagekräftig. Es war immer0, während Quote-Mints nur Legacy waren. Clients, die das ganze Byte gegen0vergleichen, lesen einen Legacy-Base-Mint als Token-2022, wenn der Quote-Mint Token-2022 ist. Dies ist der wahrscheinlichste stille Fehler in diesem Release.MigrateToCpswapbenennt seine zwei Token-Program-Konten um.base_token_program/quote_token_programwerden zutoken_program/token_program_2022. Beide sind immer erforderlich, und das Programm wählt das richtige pro Mint.- Mint/Program-Paare werden nun validiert. Beide Swap-Mints erhielten eine
mint::token_program-Constraint, ebenso der Quote-Mint vonClaimPlatformFee, daher wird ein nicht übereinstimmendes Paar zurückgewiesen statt ignoriert. - Neuer Fehler
6023CalculateOverflow. Codes6000–6022sind unverändert.6023wurde vom vorherigen Release freigegeben und wird nun wiederverwendet. - Fee-Vaults folgen dem Quote-Mint. Creator- und Platform-Fee-Vaults sowie das Token-Konto des Share-Fee-Empfängers befinden sich auf dem Programm, das den Quote-Mint besitzt.
Welche Konten änderten ihren Typ
Keine dieser Änderungen verschiebt die Position in ihrer Kontenliste. Nur der zulässige Wert ändert sich.Initialize (der veraltete V1-Pfad) ist absichtlich nicht in dieser Tabelle. Sein Quote-Program-Konto bleibt auf SPL Token typisiert.
Mehrere dieser Instruktionen verschärften auch ihre Mint-Constraints, daher wird ein nicht übereinstimmendes Mint/Program-Paar nun zurückgewiesen, wo es zuvor akzeptiert oder nicht überprüft wurde:
- Die vier Swap-Instruktionen constrainen sowohl
base_token_mintals auchquote_token_mintauf das Programm, das im entsprechenden Slot übergeben wird. Keines trug diese Constraint zuvor, daher wurde ein falsches Base-Programm stillschweigend akzeptiert. ClaimPlatformFeefügt die gleiche Constraint aufquote_minthinzu.ClaimPlatformFeeFromVaultkorrigiert seine Constraint von einer Token-Account-Form zur Mint-Form auf dem, was ein Mint-Konto ist.
Accounting für Transfer-Gebühren auf der Quote-Seite
Dies ist der Teil, der Zahlen statt Kontenlisten ändert. Bei einem Quote-Mint ohneTransferFeeConfig kollabiert jede Formel unten zum vorherigen Verhalten, daher sind Legacy-Pools und gebührenfreie Token-2022-Pools bitweise unverändert.
Zwei Konsequenzen, die es wert sind, klar ausgesprochen zu werden:
- Eine Grenze, die aus einem äquivalenten gebührenfreien Pool berechnet wird, ist nicht mehr akzeptabel.
BuyExactOutmit den gebührenfreien Kosten alsmaximum_amount_inwird nun mitExceededSlippagezurückgewiesen, ebensoSellExactInmit den gebührenfreien Erlösen alsminimum_amount_out. Das ist das beabsichtigte Verhalten — der alte Vergleich ließ den Zahler die Transfer-Gebühr zusätzlich zu einer Grenze belasten, der sie bereits zugestimmt hatten. - Das Pool-Buch bucht nur das, was im Vault ankam. Nach einem
BuyExactInvonamount_inbei einem 5%-Quote-Mint rücktreal_quoteumamount_in × 0.95vor, nicht umamount_in.
get_transfer_inverse_fee ließ auch seinen Spezialfall für einen 100%-Gebühren-Mint fallen: Statt auf maximum_fee zurückzufallen, gibt es nun den neuen CalculateOverflow-Fehler zurück, wenn die inverse Gebühr nicht berechnet werden kann. Ein Quote-Mint bei 10000 Basispunkten schlägt daher die Exact-Out-Pfade fehl, statt stillschweigend bei der Gebührengrenze zu transagieren.
token_program_flag Bit1
PoolState.token_program_flag ist ein Bitfeld und war es schon immer:
1 sein kann, weil ein Quote-Mint nun ein Token-2022 Mint sein kann. Die vier Werte sind:
Lesen Sie jedes Mint-Programm mit
(token_program_flag >> bit) & 1. Jeder Client, der das Byte als Boolean für den Base-Mint behandelt — flag === 0 ? Token : Token-2022 — löst Wert 2 zu einem Token-2022 Base-Mint auf und wird das Base-Seiten-Token-Konto und die Übertragung gegen das falsche Programm aufbauen. Keine Kontogrößen- oder Feldoffset-Änderungen, daher benötigen Indexer keine Speichermigration, nur eine Dekodierungskorrektur.
CPMM-Migrations-Konto-Umbenennung
MigrateToCpswap nahm zuvor ein Token-Programm pro Mint, und der Aufrufer entschied, welches welches war. Es nimmt nun beide Programme bedingungslos und leitet die Zuordnung aus den Mints selbst ab:
Die zwei Positionen sind unverändert, daher ist dies eine Wertänderung, keine Layout-Änderung — aber die Werte sind fast invertiert, und ein Builder, der sein altes Paar weitergibt, wird Token-2022 übergeben, wo das Legacy-Programm erforderlich ist, sobald einer der Mints ein Token-2022 Mint ist.
Das Legacy-Programm ist weiterhin bedingungslos erforderlich, unabhängig von einem der Mints, da der CPMM-LP-Mint und das gesperrte Liquiditäts-Fee-Key-NFT immer darauf leben. Das
remaining_accounts-Layout aus dem 2026-08-17 Release ist unverändert.
Quote-Mints werden nur nach Admin-Ermessen zugelassen
Im Gegensatz zu CPMM und CLMM führt LaunchLab keine Extension-Allow-List gegen einen Quote-Mint aus.CreateConfig akzeptiert das Mint-Konto wie es ist, daher ist das einzige Gate, welche Mints ein Admin an eine GlobalConfig bindet. Die NoSupportExtension-Prüfung des Programms gilt ausschließlich für Token-2022 Base-Mints, die LaunchLab selbst erstellt, wobei nur MetadataPointer und TransferFeeConfig zulässig sind.
Behandeln Sie das Binden eines Token-2022 Quote-Mints als eine Aktion mit hohem Vertrauen mit der gleichen Begründung wie die statischen Whitelists von CPMM/CLMM in reference/token-2022-support. Ein TransferHook- oder PermanentDelegate-Quote-Mint würde zum Zeitpunkt der Config-Erstellung zugelassen und würde dann auf jedem Pool, der darin quotiert ist, ausgeführt oder in der Lage sein, zu fegen.
amm_creator_fee_on Zeitstempel-Gate
InitializeV2 lässt das Zeitstempel-Gate fallen, das jeden amm_creator_fee_on außer BothToken vor dem Upgrade-Zeitstempel ablehnte. Das äquivalente Gate ist weiterhin in InitializeWithToken2022 vorhanden. In der Praxis akzeptieren beide Pfade heute auf mainnet-beta jeden Wert, da dieser Zeitstempel (1755522000, 2025-08-18 13:00 UTC) lange vorbei ist — dies ist Aufräumen, keine Verhaltensänderung für aktuelle Aufrufer.
Fehler- und IDL-Auswirkungen
Codes6000–6022 sind unverändert, einschließlich 6022 InvalidPlatformAllowConfig.
Das vorherige Release zog das alte
6023 zurück und ließ es leer; dieses Release verwendet die Nummer erneut. Dekodieren Sie 6023 nicht mit einer IDL aus einer der früheren Versionen.
Aktualisieren Sie die LaunchLab-IDL, bevor Sie ein Token-2022 Quote-Programm übergeben, token_program_flag Bit1 dekodieren oder die umbenannte MigrateToCpswap-Kontenliste aufbauen.
SDK-Auswirkungen
Die Quote-Seite des SDK-Launchpad-Moduls war an den gleichen Stellen wie das Programm fest aufTOKEN_PROGRAM_ID codiert. Der Branch, der dieses Release begleitet, löst stattdessen den Besitzer des Quote-Mints auf, leitet ihn durch Token-Account-Erstellung, die ATA des Share-Fee-Empfängers und den Quote-Program-Slot der Instruktion weiter und fügt ein optionales transferFeeConfigB zu den vier Curve-Methoden hinzu, damit Quotes die obigen Formeln widerspiegeln. Curve-Ergebnisse erhalten ein transferFeeB-Feld; amountB behält seine Bedeutung — was der Zahler ausgibt oder der Verkäufer erhält — daher erzeugt ein gebührenfreier Quote-Mint identische Zahlen wie zuvor.
Diese SDK-Änderungen sind nicht veröffentlicht. Der kanonische Pin auf den Code-Demo-Seiten in diesem Dokumentationssatz ist unverändert; überprüfen Sie die veröffentlichte Version, bevor Sie sich auf die neuen Parameter verlassen.
Referenzimplementierung
Eine neue Demo abonniert das LaunchLab-Programm über Yellowstone gRPC und protokolliert für jedesGlobalConfig- und PoolState-Update, ob jeder Mint ein Token- oder Token-2022 Mint ist:
raydium-sdk-V2-demo/src/grpc/launchpadPoolInfo.ts
Es ist eine kompakte Referenz für zwei Dinge, die dieses Release notwendig macht. Pools werden direkt aus token_program_flag klassifiziert, wobei beide Bits ohne Mint-Abruf dekodiert werden — das ist die Korrektur für den oben beschriebenen Bit1-Fehler. Configs können auf diese Weise nicht klassifiziert werden, da eine GlobalConfig nur die Adresse ihres Quote-Mints und kein Programm-Flag speichert, daher liest die Demo das Besitzer-Konto des Mint-Kontos einmal und cached es pro Mint. Beide Pfade nebeneinander zu sehen ist der schnellste Weg, um Ihren eigenen Decoder zu überprüfen.
Siehe products/launchlab/code-demos für die Anleitung.
Aktualisierte Seiten
products/launchlab/accounts— Quote-Mint Token-Programm,token_program_flagBit-Layout und Vault-Besitz.products/launchlab/instructions— Quote-Program-Konten, Swap-Slippage-Semantik und die umbenannten Migrations-Konten.products/launchlab/global-config—quote_mintkann ein Token-2022 Mint sein, und was es gatet und nicht.products/launchlab/code-demos— der gRPC Config/Pool-Watcher.reference/token-2022-support— LaunchLab-Zeile und ein Quote-Mint-Abschnitt.reference/error-codes—6023CalculateOverflow.

