إنتقل إلى المحتوى الرئيسي

⚡ العقود الذكية — بنية مفتوحة المصدر

تصميم بلا حاجة للثقة (Trustless). منطق المكافآت وأشجار الإحالة وجداول التنصيف — كل شيء يُنفَّذ على السلسلة عبر برامج Rust قابلة للتدقيق. الكود المصدري: GitHub


نظرة عامة

ينشر Matsuri ثلاثة برامج Anchor (Rust) على Solana، كل منها يتعامل مع ركيزة مميزة من النظام البيئي:

graph TB
subgraph "برامج على السلسلة (Solana)"
P1["📣 matsuri-referral\nبروتوكول En-Mining"]
P2["⛩️ matsuri-worship\nمحرك توجيه الحج"]
P3["📊 matsuri-distribution\nتوزيع التنصيف"]
end
subgraph "خارج السلسلة (Django + Next.js)"
BE["🖥️ Backend Oracle\nتحقق الهوية + GPS\nإرسال Cranker TX"]
FE["📱 الواجهة الأمامية\nالمحفظة + لوحة التحكم\nخريطة المواقع المقدسة"]
end
FE -->|"توقيع المحفظة"| P1 & P2 & P3
BE -->|"Cranker TX"| P1 & P2 & P3
P1 & P2 & P3 -->|"CPI"| MTC["💎 MTC (رمز SPL)"]

1. 📣 بروتوكول En-Mining (縁マイニング)

الغرض: محرك نمو هجين يكافئ كلاً من الاتساع (مدى الإحالة) والعمق (التأثير الاقتصادي). ليس مجرد برنامج انتساب — بل بروتوكول تعدين كامل حيث النشاط الاقتصادي الحقيقي يولّد قيمة على السلسلة.

صيغة التسجيل

S_final = S_raw × M_toku × B_title

where:
S_raw = 0.30 × عدد_الإحالات + 0.70 × (الحجم / 10^9)
M_toku = f(MTC المُراهن) ∈ [1.0×, 10.0×]
B_title = 1.0 + min(عدد_المواسم_في_التصنيف × 0.05, 0.50)
المكوّنالوزنالغرض
الاتساع (عدد الإحالات)30%مدى الشبكة — كم شخصاً تجلب
العمق (حجم التسوية)70%التأثير الاقتصادي — مشتريات حقيقية، ليس مجرد تسجيلات
مُضاعف Toku×1–10أقفل MTC لتعزيز قوة التعدين
تعزيز اللقب+5%/موسممكافأة دائمة للمتفوقين باستمرار

مستويات رهن Toku (徳)

MTC المُراهنالمُضاعفالمستوى
01.0×
1,000+1.5×برونزي
10,000+3.0×فضي
100,000+5.0×ذهبي
1,000,000+10.0×ماسي

En no Banzuke (تصنيف موسمي)

في كل موسم (حقبة)، يتم تصنيف أفضل المؤدين. المزايا:

  • أفضل 10% يحصلون على لقب مبشّر (علامة SBT دائمة)
  • كل موسم في التصنيف يمنح +5% تعزيز تعدين (تراكمي، الحد الأقصى: 50%)

دفاع مضاد لـ Sybil (3 طبقات)

الطبقةالآليةالموقع
بوابة الهويةX/Twitter OAuth + SMSخارج السلسلة (Django)
بوابة على السلسلةفقط الملفات الشخصية is_verified = true تكسبالعقد الذكي
ترجيح العمق70% من النقاط = مدفوعات حقيقية → الروبوتات لا تكسب شيئاًمحرك التقييم

2. ⛩️ محرك توجيه الحج (Worship Routing Engine)

الغرض: أول بروتوكول ReFi في العالم يحل مشكلة السياحة المفرطة باستخدام اقتصاديات الرمز. زر المواقع المقدسة → اكسب MTC. لكن الحيلة: المواقع الأقل زيارة تدفع أكثر بشكل أُسّي.

الرؤية

هذا «تسعير Uber العكسي» — المواقع المزدحمة تُعاقب، والمواقع الحدودية تُكافأ. السياح يوجهون أنفسهم إلى مواقع أقل زيارة لأنها أكثر ربحية.

صيغة المكافآت ذات 6 طبقات

R_final = R_pioneer × M_dynamic × M_regional × M_streak × M_omikuji

where:
R_pioneer = daily_pool / visit_order (تناقص توافقي 1/n)
M_dynamic = يتحكم المشرف ∈ [0.1×, 50×]
M_regional = tier_table[tier] ∈ {1×, 2×, 5×, 10×}
M_streak = 1.0 + min(days × 0.02, 0.50)
M_omikuji = القرعة ∈ {1.0, 1.2, 1.5, 3.0}

الطبقة 1: مكافأة الرائد

التناقص التوافقي — الرياضيات التي توجه السياح:

ترتيب الزيارةالمكافأة مقارنة بالأولمثال حقيقي (مجمع 1000 MTC)
الأول100%1,000 MTC
الخامس20%200 MTC
العاشر10%100 MTC
المئة1%10 MTC

الزائر الأول = 100 ضعف المكافأة مقارنة بالزائر رقم 100. هذا يخلق حافزاً قوياً للزيارة في أوقات خارج الذروة.

الطبقة 2: المُضاعف الديناميكي (تفريق الازدحام)

يتحكم فيه المشرفون في الوقت الحقيقي عبر لوحة GCF Admin:

السيناريوالمُضاعفالتأثير
سياحة مفرطة (ذروة أساكوسا)0.1×عقوبة 90% على المكافأة
عادي1.0×قياسي
قليل الزيارة10×تعزيز 10 أضعاف
حملة حدودية50×أقصى حافز

الطبقة 3: المستوى الإقليمي

المستوىالتصنيفالمُضاعفأمثلة
0🏙️ كبير浅草寺, 清水寺, 伏見稲荷
1🌆 متوسطالمعابد الرئيسية الإقليمية
2🏞️ ريفيمعابد تاريخية في الريف
3⛰️ مخفي10×معابد جبلية، مزارات جزرية

الطبقة 4: مكافأة التتابع

+2% لكل يوم متتالٍ، الحد الأقصى +50%. يكافئ الزوار المنتظمين.

الطبقة 5: 🎲 بروتوكول Omikuji

النتيجةالاحتمالالمُضاعف
🏆 大吉5%3.0×
15%1.5×
🌸 小吉30%1.2×
🍃 末吉35%1.0×
💀 15%1.0×

الطبقة 6: إشارات مدعومة (B2B/B2G)

البلديات وشركات السكك الحديدية ومجالس السياحة يمكنها إيداع MTC لإنشاء مناطق مكافآت عالية مؤقتة في مواقع محددة.

graph LR
MUN["🏛️ البلدية\nإيداع 100K MTC"] --> BEACON["📡 إشارة\n+500 MTC/زيارة\n30 يوم"]
BEACON --> SITE["⛩️ معبد ريفي\n×50 مُضاعف"]
SITE --> TOURIST["👤 سائح\nيزور المعبد"]
TOURIST --> REWARD["💎 مكافأة MTC عالية\n→ يبقى أطول\n→ ينفق محلياً"]

نموذج إيرادات B2B: الرعاة يدفعون MTC لتوجيه السياح. ضغط شراء MTC → قيمة الرمز. ربح للجميع.


3. 📊 توزيع التنصيف

الغرض: 550 مليون MTC من مجمع التعدين يُوزَّع على مدى عقود عبر دورة تنصيف كل سنتين — أسرع من دورة Bitcoin ذات الأربع سنوات.

جدول التنصيف

إجمالي المجمع: 550,000,000 MTC

الحقبة 0 (2027–2029): 275,000,000 MTC (50%)
الحقبة 1 (2029–2031): 137,500,000 MTC (25%)
الحقبة 2 (2031–2033): 68,750,000 MTC (12.5%)
الحقبة 3 (2033–2035): 34,375,000 MTC (6.25%)
... ...
∑ → 550,000,000 MTC (المجموع التقاربي)

صيغة المكافأة الفردية

your_reward = epoch_budget × (your_score / total_score)

كل العمليات الحسابية تستخدم حساب وسيط 128-بت — مستحيل رياضياً أن يحدث طفح.

مصادر نقاط الأداء

النشاطوزن النقاط
جلسات الإرشاد المُنفَّذةعالٍ
مبيعات تذاكر الفعالياتعالٍ
نشاط شبكة الإحالاتمتوسط
زيارات تعدين الحجمتوسط
المشاركة الإعلاميةمنخفض
تقدم الحقبة بدون إذن

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


4. 🎴 تعدين AR — WebAR Omikuji Mining

الغرض: اجعل AR Omikuji تظهر في الفضاء الحقيقي باستخدام متصفح الهاتف الذكي فقط لتعدين MTC. لا حاجة لتنزيل تطبيق. أول بنية تحتية WebAR × بلوكتشين في العالم تجمع بين الروحانية الشنتوية والتكنولوجيا المتطورة.

البنية المعمارية

sequenceDiagram
participant U as المستخدم (الهاتف)
participant AR as WebAR (Three.js)
participant VP as VisionProof
participant API as Django API
participant SC as Solana

U->>AR: تشغيل الكاميرا + إذن GPS
AR->>API: بدء الجلسة (GPS)
API-->>AR: session_token + site_info
AR->>AR: عرض صندوق Omikuji ثلاثي الأبعاد
U->>AR: نقر
AR->>VP: بدء جمع بيانات الحركة + الضوء
AR->>API: draw_omikuji (session_token)
Note over AR: رسوم متحركة للتأثير 2.5 ثانية
API->>API: validate (5 طبقات) → draw() → تحديد NFT
API-->>AR: result + reward + nft
AR->>U: 🏆大吉 +50 MTC
API->>SC: Cranker TX (غير متزامن)

Optimistic UI (انتظار صفري)

الخطوةالوقتالمعالجة
نقر → بدء التأثير0msالواجهة تشغل الرسوم فوراً
API draw_omikuji~50msDjango يسحب + تحديد NFT
اكتمال التأثير2500msالنتيجة مؤكدة → العرض
Solana TX~400msإرسال في الخلفية

إعدادات احتمالات Omikuji (مشرف GCF)

نقاط أساس (10000 = 100%) بدقة تحكم 0.01%.

الدرجةالقيمة الافتراضيةمُضاعف المكافأةNFT
🏆 大吉5.00% (500bp)×3.0
✨ 吉15.00% (1500bp)×1.5اختياري
🌸 小吉30.00% (3000bp)×1.2
🍃 末吉35.00% (3500bp)×1.0
💀 凶15.00% (1500bp)×1.0

ZK-Proof of Vision (تحقق من 5 طبقات)

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

الطبقةمحتوى التحققالنقاط
Temporalمدة الجلسة 5-120 ثانية/20
Motionتباين الجيروسكوب 0.005-0.5 (طبيعية اليد)/20
Lightضوء محيط × تناسق الوقت/20
HMACتحقق من توقيع proof_hash/20
Fingerprintتفرد الجهاز/20
الإجماليعتبة PASS60/100

صيغة حساب المكافأة

Reward = Base(10 MTC) × SiteMultiplier × OmikujiMult × TierMult

TierMult = { كبير: 1.0, متوسط: 2.0, ريفي: 5.0, مخفي: 10.0 }

وحدات الرياضيات (النواة مفتوحة المصدر)

يفصل كلا البرنامجين كل رياضيات التقييم/المكافآت إلى وحدات math.rs نقية وقابلة للتدقيق مع:

  • صفر آثار جانبية — لا I/O، لا تخصيصات، لا استدعاءات خارجية
  • صيغ موثقة — ترميز بأسلوب LaTeX في rustdoc
  • تحليل الطفح — قيم وسيطة u128 بحدود مُثبتة
  • اختبارات شاملة — حالات حدية، شروط حدودية، تحقق من النسب
// مثال: مكافأة الرائد (من worship/math.rs)
#[inline]
pub fn pioneer_reward(daily_pool: u64, visit_order: u32) -> u64 {
if visit_order == 0 { return 0; }
(daily_pool as u128 / visit_order as u128) as u64
}

نموذج الأمان (مفتوح المصدر)

هذه العقود مفتوحة المصدر بالكامل. الأمان يعتمد على ضمانات رياضية، لا على الغموض.

المبدأالتنفيذ
خزائن PDA فقطخزائن الرموز تُتحكم بعناوين مشتقة من البرنامج — لا يمكن لأي مفتاح بشري سحبها
حساب مدقّقكل العمليات الحسابية تستخدم عمليات checked_* — الطفح مستحيل
فصل الصلاحياتالمشرف (توقيع متعدد) ≠ Cranker (عمليات محدودة) ≠ المستخدم (حفظ ذاتي)
إيقاف طوارئالمشرف يمكنه إيقاف جميع البرامج فوراً؛ لا يمكنه سرقة الأموال
اقتصاد رمزي ثابتمُعامل التنصيف والمجمع الكلي ومدة الحقبة تُحدد مرة واحدة ولا يمكن تغييرها
وحدات رياضيات نقيةمنطق التقييم/المكافآت مفصول في مكتبات رياضيات قابلة للتدقيق والاختبار
Vision Proofمكافحة تزوير من 5 طبقات بدون نقل بيانات الكاميرا (حفظ الخصوصية)

◀ العودة إلى خارطة الطريقعرض الكود المصدري