يوميات تطوير العقود الذكية بلغة Rust: تحليل عميق لآلية اقتراحات Sputnik DAO
تعتبر Sputnik DAO كأحد البنى التحتية في نظام NEAR البيئي، حيث تدفع مشاريع NEAR نحو الحكم الذاتي اللامركزي. ستتناول هذه المقالة تحليلًا عميقًا للمفاهيم الأساسية في العقود الذكية الخاصة بـ Sputnik DAO - آلية الاقتراح (Proposal).
!
1. إطلاق الاقتراح
يمكن لكل عضو في Sputnik DAO تقديم اقتراح للتعبير عن آرائهم بشأن حوكمة المشروع. من الناحية العقدية، يمكن للأعضاء استدعاء طريقة add_proposal() لعقد sputnikdaov2 لبدء اقتراح جديد:
يحتاج مقدم الاقتراح إلى تقديم تفاصيل الاقتراح، بما في ذلك:
وصف الاقتراح
نوع الاقتراح ( مثل FunctionCall، Transfer وغيرها )
ستقوم العقود الذكية بمعالجة هذه المعلومات بشكل أكبر، وتوليد كائن Proposal كامل، وتخصيص proposal_id فريد.
من الجدير بالذكر أن بدء الاقتراح يتطلب رهن كمية معينة من رموز NEAR كضمان. سيتم إرجاع هذا الضمان إلى مقدم الاقتراح بعد انتهاء الاقتراح بشكل طبيعي.
!
2. حالة الاقتراح
قد تمر مقترحات في Sputnik DAO بعدة حالات:
InProgress: الحالة الأولية، يجري التصويت
معتمد: تم تمرير التصويت
مرفوض: لم يمر التصويت
Removed: تم الإزالة
تتغير حالة الاقتراح بواسطة طريقة act_proposal(). يمكن لأعضاء DAO استدعاء هذه الطريقة للتصويت على الاقتراح:
VoteApprove: موافقة
VoteReject: ضد
VoteRemove: يزيل
بعد انتهاء التصويت، يتم تحديث حالة الاقتراح بناءً على نتائج التصويت.
!
3. تنفيذ الاقتراح
عندما تتغير حالة الاقتراح إلى Approved، ستقوم العقدة باستدعاء دالة internal_execute_proposal() لتنفيذ محتوى الاقتراح.
يدعم Sputnik DAO أنواعًا متعددة من الاقتراحات، تركز هذه المقالة على نوعين نموذجيين من الاقتراحات:
3.1 اقتراح تنفيذ دالة العقد
بالنسبة للاقتراحات من نوع FunctionCall، ستقوم العقود بتنفيذ استدعاء الدالة المحددة في الاقتراح. يمكن أن يحتوي الاقتراح على عدة كائنات ActionCall، حيث يحدد كل كائن طريقة العقد المراد استدعاؤها والمعلمات.
!
3.2 اقتراح نقل أموال العقود
يتم استخدام اقتراح من نوع Transfer لنقل الرموز من حساب العقد إلى حساب محدد. سيقوم العقد بتنفيذ عملية النقل المناسبة وفقًا لنوع الرموز ونوع حساب المستلم.
!
4. الخلاصة
تقدم هذه المقالة المفاهيم الأساسية لآلية الاقتراح في عقود Sputnik DAO، بما في ذلك إنشاء الاقتراحات وتغيير الحالة وعملية التنفيذ. توفر هذه الآلية حلاً للحكم اللامركزي المرن والفعال لمشروع NEAR.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 18
أعجبني
18
7
مشاركة
تعليق
0/400
SelfSovereignSteve
· منذ 18 س
هذا الاقتراح يبدو أكثر تعقيدًا من الإيث.
شاهد النسخة الأصليةرد0
TxFailed
· منذ 18 س
في الواقع، داو آخر سيفشل بسبب عدم اهتمام الناخبين... لقد جربت ذلك من قبل
شاهد النسخة الأصليةرد0
AllInAlice
· منذ 18 س
تتحدث الإدارة أيضًا عن تصميم الآليات.
شاهد النسخة الأصليةرد0
mev_me_maybe
· منذ 18 س
المال هو الحقيقة الصلبة
شاهد النسخة الأصليةرد0
GasFeeCrying
· منذ 18 س
هل تم تعديل الآلية بالقرب؟ حان وقت دفع رسوم الوقود.
تحليل العقود الذكية Sputnik DAO: من آلية الاقتراحات نلقي نظرة على الحوكمة اللامركزية في بيئة NEAR
يوميات تطوير العقود الذكية بلغة Rust: تحليل عميق لآلية اقتراحات Sputnik DAO
تعتبر Sputnik DAO كأحد البنى التحتية في نظام NEAR البيئي، حيث تدفع مشاريع NEAR نحو الحكم الذاتي اللامركزي. ستتناول هذه المقالة تحليلًا عميقًا للمفاهيم الأساسية في العقود الذكية الخاصة بـ Sputnik DAO - آلية الاقتراح (Proposal).
!
1. إطلاق الاقتراح
يمكن لكل عضو في Sputnik DAO تقديم اقتراح للتعبير عن آرائهم بشأن حوكمة المشروع. من الناحية العقدية، يمكن للأعضاء استدعاء طريقة add_proposal() لعقد sputnikdaov2 لبدء اقتراح جديد:
صدأ حانة fn add_proposal( & mut self ، اقتراح: ProposalInput) -> u64
يحتاج مقدم الاقتراح إلى تقديم تفاصيل الاقتراح، بما في ذلك:
ستقوم العقود الذكية بمعالجة هذه المعلومات بشكل أكبر، وتوليد كائن Proposal كامل، وتخصيص proposal_id فريد.
من الجدير بالذكر أن بدء الاقتراح يتطلب رهن كمية معينة من رموز NEAR كضمان. سيتم إرجاع هذا الضمان إلى مقدم الاقتراح بعد انتهاء الاقتراح بشكل طبيعي.
!
2. حالة الاقتراح
قد تمر مقترحات في Sputnik DAO بعدة حالات:
تتغير حالة الاقتراح بواسطة طريقة act_proposal(). يمكن لأعضاء DAO استدعاء هذه الطريقة للتصويت على الاقتراح:
بعد انتهاء التصويت، يتم تحديث حالة الاقتراح بناءً على نتائج التصويت.
!
3. تنفيذ الاقتراح
عندما تتغير حالة الاقتراح إلى Approved، ستقوم العقدة باستدعاء دالة internal_execute_proposal() لتنفيذ محتوى الاقتراح.
يدعم Sputnik DAO أنواعًا متعددة من الاقتراحات، تركز هذه المقالة على نوعين نموذجيين من الاقتراحات:
3.1 اقتراح تنفيذ دالة العقد
بالنسبة للاقتراحات من نوع FunctionCall، ستقوم العقود بتنفيذ استدعاء الدالة المحددة في الاقتراح. يمكن أن يحتوي الاقتراح على عدة كائنات ActionCall، حيث يحدد كل كائن طريقة العقد المراد استدعاؤها والمعلمات.
!
3.2 اقتراح نقل أموال العقود
يتم استخدام اقتراح من نوع Transfer لنقل الرموز من حساب العقد إلى حساب محدد. سيقوم العقد بتنفيذ عملية النقل المناسبة وفقًا لنوع الرموز ونوع حساب المستلم.
!
4. الخلاصة
تقدم هذه المقالة المفاهيم الأساسية لآلية الاقتراح في عقود Sputnik DAO، بما في ذلك إنشاء الاقتراحات وتغيير الحالة وعملية التنفيذ. توفر هذه الآلية حلاً للحكم اللامركزي المرن والفعال لمشروع NEAR.
!
!
!
!
!
!
!
!
!
!
!
!
!