إذا استطاعت الخزينة حساب مبلغ الاسترداد، فهل يعني ذلك بالضرورة أنه يمكنك سحبه؟

إذا عرضت صفحة الخزينة عدد الحصص التي ستُخصم عند السحب، فلا تعتبر هذا الرقم دليلاً على إمكانية السحب الآن. ففي معيار الخزائن ERC-4626 الشائع في منظومة $ETH، يُفصل بين الحساب والتحقق من حدود السحب.

يمكن فهم حصص الخزينة على أنها إيصالات تمثل ما تملكه. تحسب الدالة previewWithdraw في المعيار عدد الحصص التي يجب خصمها لسحب كمية محددة من الأصول، مع احتساب رسوم السحب؛ لكن يجب عليها تجاهل حدود السحب، وإجراء الحساب على أساس قبول الطلب.

أما الدالة maxWithdraw، فعليها مراعاة القيود المفروضة على الخزينة ككل وعلى هذا المستخدم. إذا كان السحب معطلاً تماماً مؤقتاً، فينبغي أن تعيد هذه الدالة صفراً.

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

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

#Ethereum #DeFi

المصدر: https://eips.ethereum.org/EIPS/eip-4626