تخطَّ إلى المحتوى
مشروع استعراضيBlockchain وWeb3
  • 223 اختبارًا
  • تغطية 100%
  • محلَّل بـ Slither

Milestone Escrow

Escrow مرحلي لأعمال المستقلين والوكالات — بـ ETH أو أي ERC-20 قياسي

Solidity 0.8.28OpenZeppelin v5ETH / ERC-20Foundry

ما هو

MilestoneEscrow عقد escrow واحد على السلسلة يحفظ أي عدد من المهام المستقلة. يموّل العميل الميزانية كاملة عند إنشاء المهمة، مقسّمة على ما يصل إلى 50 مرحلة، فيرى المستقل أن المال موجود قبل بدء العمل.

لا تتحرك الأموال إلا عندما يحرّر العميل مرحلة، أو عندما يفصل محكّم محايد في نزاع بقسمة الأموال غير المحرّرة بنقاط أساس، أو عند إلغاء المهمة وردّ المبلغ للعميل. تُخصم رسوم بروتوكول صغيرة (بحد أقصى 5% ومثبّتة لكل مهمة) من مدفوعات المستقل؛ ولا تُفرض رسوم على المبالغ المردودة أبدًا.

المشكلة التجارية

العمل عن بُعد بين طرفين لا يعرف أحدهما الآخر يصطدم بفجوة ثقة: العملاء لا يريدون الدفع مقدمًا، والمستقلون لا يريدون التسليم قبل القبض. تسدّ المنصات هذه الفجوة، لكنها تتقاضى رسومًا كبيرة ويمكنها تجميد الحسابات والفصل في النزاعات بطرق لا يراها الطرفان.

كيف يعمل

  1. 1

    الإنشاء: يستدعي العميل createJob(freelancer, arbiter, token, amounts[]) ويموّل المبلغ كاملًا بـ ETH أو ERC-20. تُثبَّت الرسوم الحالية في المهمة.

  2. 2

    التسليم: يستدعي المستقل requestRelease(jobId, i) للإشارة إلى اكتمال المرحلة i.

  3. 3

    التحرير: يستدعي العميل releaseMilestone(jobId, i). يتسلّم المستقل المبلغ ناقص الرسوم؛ وعند تحرير كل المراحل تكتمل المهمة.

  4. 4

    النزاع (اختياري): يفتح أيٌّ من الطرفين نزاعًا فيجمد المهمة. يقسم المحكّم كل مرحلة غير محرّرة بين المستقل والعميل بنقاط أساس.

  5. 5

    الإلغاء (اختياري): يمكن للعميل الإلغاء بردّ كامل قبل طلب أو تحرير أي عمل؛ ويمكن للمحكّم الإلغاء ما دامت المهمة مفتوحة.

إجراءات الأمان

  • nonReentrant على كل دالة تحرّك قيمة؛ تُنهى الحالة قبل الاستدعاءات الخارجية (checks-effects-interactions)
  • مدفوعات ETH مقاومة للتعطيل: المدفوعات الفاشلة تُقيَّد للسحب لاحقًا
  • تُرفض الرموز ذات الرسوم على التحويل عبر فحص الرصيد قبل/بعد
  • سقف الرسوم (5%) وتثبيت الرسوم لكل مهمة: لا يستطيع المالك رفع الرسوم على المهام المموّلة
  • حلقات محدودة (بحد أقصى 50 مرحلة) وثلاثة أدوار مميزة
  • Ownable2Step؛ لا يستطيع المدير لمس أموال المهام أبدًا
  • ثابت ملاءة مفحوص بالفازينغ: رصيد العقد يساوي مجموع المراحل غير المحرّرة

الميزات

  • أي عدد من المهام في عقد واحد
  • تمويل بـ ETH أو ERC-20
  • حتى 50 مرحلة لكل مهمة
  • طلبات تحرير ونزاعات بقسمة المحكّم بنقاط أساس
  • إلغاء وردّ مبالغ
  • تثبيت رسوم البروتوكول بحد أقصى 5%

حالات الاستخدام النموذجية

  • أسواق المستقلين ومنصات الوكالات بمدفوعات غير وصائية
  • عقود خدمات B2B بفوترة مرحلية
  • برامج منح تدفع على دفعات مع لجنة كمحكّم

القيود المعروفة

يُفترض حياد المحكّم؛ في الإنتاج يكون multisig أو DAO أو محكمة لامركزية. الرموز ذات إعادة الأساس غير مدعومة.

عقود استعراضية أخرى

استعراضي

Token + Vesting + Staking

ERC-20 بسقف صارم مع موافقات بلا gas، وجداول vesting بفترة cliff للفريق والمستثمرين، ومكافآت staking بأسلوب Synthetix.

ERC-20EIP-2612OpenZeppelin v5

223 اختبارًا · تغطية 100% · محلَّل بـ Slither

استعراضي

SigmaNFT Collection

إطلاق NFT عادل: مرحلتا قائمة بيضاء وعامة، وحدود لكل محفظة، وحد أقصى للعرض غير قابل للتغيير، وحقوق ERC-2981، وكشف مؤجل.

ERC-721ERC-2981Merkle proofs

223 اختبارًا · تغطية 100% · محلَّل بـ Slither

استعراضي

Gold-Backed Token (RWA)

يصبح الدعم شرطًا مسبقًا للسكّ: لا يمكن سكّ الرموز إلا إذا غطّى احتياطي الذهب المبلغ عنه العرض الإجمالي الجديد.

ERC-20AccessControlProof of reserve

223 اختبارًا · تغطية 100% · محلَّل بـ Slither

المعايير: Solidity 0.8.x وOpenZeppelin واختبارات Foundry مع فازينغ وتحليل Slither الثابت وشيفرة موثّقة. 223 اختبارًا · تغطية 100% · محلَّل بـ Slither.

لديك مشروع في ذهنك؟

أخبرنا بما تبنيه. يرد مهندس senior خلال ساعة في أيام العمل — ثم تحصل على تقييم صادق ونطاق واضح وعرض بسعر ثابت أو مرحلي، عادة خلال أيام عمل قليلة.

تفضّل الكتابة أولًا؟ راسلنا

ستتحدث مباشرة مع Ing. Ismet Mesic، Tech lead.