Skip to main content
هذه الصفحة مُترجَمة آليًا بواسطة الذكاء الاصطناعي. النسخة الإنجليزية هي المرجع المعتمد.عرض النسخة الإنجليزية →
هذا هو سجل التوثيق — السجل الذي يتتبع التحديثات على هذه الصفحات منذ إطلاق المشروع. يرتبط كل إصدار أدناه بإدخاله الخاص؛ افتح أحدها للحصول على الملخص الكامل والفصول المتأثرة وتاريخ التحقق. للخط الزمني التاريخي للبروتوكول نفسه، انظر introduction/history-and-milestones.

الإصدارات

CPMM: يحتفظ البروتوكول بحصة من رسوم المنشئ
يمكن لـ CPMM الآن الاحتفاظ بجزء من رسوم المنشئ. يتم تطبيق التقسيم عند تحصيل الرسوم، وليس عند فرضها: المبادلة لا تزال تجمع رسوم المنشئ بالكامل إلى creator_fees_token*، وتقوم CollectCreatorFee / CollectCreatorFeePermissionless بعد ذلك بنقل حصة إلى عدادات protocol_fees_token* الموجودة في المجموعة ودفع الباقي للمنشئ — مع التقريب لأسفل، بحيث يبقى الغبار مع المنشئ. يأتي المعدل من AmmConfig.creator_fee_share_rate جديد (محفور من الحشو؛ الحساب لا يزال 236 بايت، لكن padding[0] القديم هو الآن حقل نشط) أو من PDA CreatorFeeShare لكل منشئ يتجاوزه، يُدار بواسطة المسؤول الجديد CreateCreatorFeeShare / CloseCreatorFeeShare. كسر لعملاء رسوم المنشئ: كلا تعليمات التحصيل تأخذ حسابات جديدة مُلحَقة في نهاية قائمتيهما — تحتفظ الحسابات الموجودة بمواضعها، لكن الجديدة إلزامية، لذا تُرفض معاملة ما قبل الترقية بسبب حسابات مفقودة. يكتسب UpdateAmmConfig param = 8. PoolState وحسابات المبادلة وفحص k لم تتغير، ولم تُضف رمز خطأ. يركب معها: إصلاح ترتيب ثنائي المسار في CollectExcessLamports.اقرأ الإدخال الكامل →
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 — لاحظ أن حسابات المصدر يجب أن تكون مجمعة حسب أيٍ من ثلاثة PDAs لسلطة الخزينة يمتلكها. انتقلت ثلاثة قيود عنوان MigrateToCpswap إلى جسم التعليمات، مما يغير 2012 إلى 2502. تم إلحاق 6031. لم يتغير تخطيط الحساب أو تعليمات التداول أو سلوك الرسوم.اقرأ الإدخال الكامل →
CPMM: Anchor 1.0، واسترجاع الـ lamports الزائدة، وأصحاب الرسوم المصححون
ينتقل CPMM إلى Anchor 1.0.2 على Agave 3.1.10 ويضيف مسؤول CollectExcessLamports يعيد الإيجار المحرر بواسطة SIMD-0437 من الخزائن وسك LP و PDAs — بما في ذلك خزائن SOL المغلفة، عبر جولة SyncNative / UnwrapLamports التي تترك الرصيد المغلف دون تغيير. ثلاث تغييرات سلوكية تركب معها: يكتب CreateAmmConfig الآن مفاتيح protocol_fee_owner و fund_fee_owner المشفرة بدلاً من الموقّع (الإعدادات الموجودة لم تُهاجر — اقرأ الحقول)، تمت إزالة قائمة Token-2022 MINT_WHITELIST الأربعة المشفرة بحيث تكون 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 عن قراءة متغير الإيجار الزائد الخاص به لكنه لا يزال يقبل قائمة الحسابات الخمسة القديمة. يكتسب 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 والتعليمات الأربع للمبادلة وكل مطالبة رسوم برنامج الرمز في فتحة برنامج الاقتباس؛ يبقى Initialize المهجور وراثيًا فقط. تتم مقارنة حدود الانزلاق للمبادلة الآن مع ما يدفعه أو يستقبله الدافع فعليًا، بعد خصم رسوم النقل لرمز الاقتباس. يصبح بت bit1 من PoolState.token_program_flag ذا معنى، لذا فك التشفير الذي يختبر البايت بالكامل مقابل 0 يسيء قراءة رمز أساسي وراثي كـ Token-2022. يعيد تسمية MigrateToCpswap حسابات برنامج الرمز الخاصة به إلى token_program / token_program_2022، و 6023 يُعاد استخدامه لـ CalculateOverflow.اقرأ الإدخال الكامل →
LaunchLab: إطلاقات CPMM فقط وعناصر تحكم إعدادات المنصة
يتطلب الآن تهيئة الإطلاق الجديدة CPMM بينما تبقى الحالة المرتبطة بـ AMM v4 القديمة قابلة للهجرة. قبل هذا الإصدار، أنتج creator_scale مفتاح رسوم مملوك للمنشئ؛ تقوم هجرات CPMM المنفذة بعد الترقية بدلاً من ذلك بدمج platform_scale + creator_scale في حصة مفتاح رسوم واحدة مملوكة للمنصة. يمكن للمنصات أيضًا تقييد الإطلاقات باستخدام PDAs PlatformAllowConfig الخاصة بها، ويجب على منشئي الهجرة إلحاق كلا PDAs دعم CPMM.اقرأ الإدخال الكامل →
CLMM: تجميد NFT موضع المُصدر المقيد
تستخدم رموز NFT موضع CLMM الجديدة مجموعتها كسلطة تجميد، لكن حسابات الرموز الخاصة بها تبقى غير مجمدة بشكل افتراضي. يحدث التجميد فقط على OpenPositionV2 أو OpenPositionWithToken22Nft عندما تطابق سلطة التجميد لأي من رموز الخزينة الأساسية قائمة المُصدر المقيد. لا يمكن لموضع مطابق نقل أو تغيير المالك لكن يمكنه لا يزال إدارة السيولة. يجب أن تلحق استدعاء ClosePosition الخاص به المجموعة بحيث يمكن لـ CLMM إذابة وحرق وإغلاق بشكل ذري. تبقى المواضع الموجودة دون تغيير.اقرأ الإدخال الكامل →
CPMM: تحصيل رسوم المنشئ بدون إذن
تسمح تعليمة إضافية CollectCreatorFeePermissionless لأي دافع بمسح جميع رسوم المنشئ المتراكمة، مع تقييد المستفيد وكلا وجهات الرموز إلى PoolState.pool_creator و ATAs الكنسي للمنشئ. يبقى المسار الموقّع من قبل المنشئ الأصلي دون تغيير. يقبل CreatePermissionPda أيضًا سلطة منحة مخصصة، بينما يبقى ClosePermissionPda للمسؤولين فقط.اقرأ الإدخال الكامل →
CLMM: مجموعات متعددة مرخصة وحماية حساب مجمد لأوامر الحد
تحديثان برنامج CLMM إضافيان وعكسيان متوافقان. يطوي CreatePermissionedPool seed_index غير صفري يوفره العميل في بذور PDA للمجموعة، مما يسمح لمشغل مدرج في القائمة البيضاء (واحد يحتفظ بـ PDA Permission) بإنشاء مجموعات متعددة لكل (config, mint0, mint1) — لذا معرف المجموعة لم يعد قانونيًا لزوج. تدير تعليمات المسؤول الجديدة CreatePermissionPda / ClosePermissionPda تلك المنح، و PoolState يكتسب حقل seed_index (محفور من الحشو، لا تغيير الحجم). بشكل منفصل، يأخذ OpenLimitOrder الآن حسابات جانب الإخراج ويرفض الأوامر التي يكون حساب الرمز الخاص بها على جانب الإدخال أو الإخراج مجمدًا (NotApproved).اقرأ الإدخال الكامل →
AMM v4: إزالة تبعية OpenBook / Serum
يزيل AMM v4 تبعيته الخامدة منذ فترة طويلة من OpenBook/Serum وجميع CPIs لدفتر الطلبات والتعليمات الميتة لصنع السوق. تحتفظ 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”.

التصحيحات

إذا وجدت خطأ في هذا التوثيق، يرجى فتح مشكلة أو طلب سحب على مستودع التوثيق. يتم تسجيل التصحيحات كإدخالات سجل تغييرات.

المؤشرات