XP, Yield matching, Carry YELD payout
यह अनुभाग वर्तमान backend में Yield मैकेनिक्स का वर्णन करता है (आंतरिक तकनीकी मॉड्यूल का नाम yield है)।
1) शब्दावली (वर्तमान सिस्टम में)
- XP: इस दस्तावेज़ में हम इसे XP कहते हैं। Backend में आंतरिक नाम
xpहै (models/fields:XPCredit,carryLeftXP,carryRightXP)। - USDOL/USDOR: ये LEFT/RIGHT branches (yield sides) हैं।
- Carry YELD: backend में
carryYeldUsdo(USDO-base) के रूप में स्टोर होता है और इसका अर्थ है yield matching से जमा payout pool, जो बाद में weekly caps के साथ भुगतान होता है।
2) investment से XP की गणना
- हर investment के लिए XP इस प्रकार निकाला जाता है:
xpBase = amountBase * xpPercent / 100xpPercentBlock settings से आता है (default: 20%)
3) Tree में XP propagation
investment का placement side (LEFT या RIGHT), investmentInviteCode से निर्धारित होता है:
- Placement user उसी side पर XP credit प्राप्त कर सकता है
- फिर XP credit
referredByUserIdchain के माध्यम से root तक “ऊपर” जाता है (max depth guard=100)
4) महत्वपूर्ण सीमा: केवल TIP3 users को XP credits मिलते हैं
वर्तमान सिस्टम में:
- XP credit केवल तब बनता है जब recipient user का
programTier === TIP3हो। - Yield worker (internal module
yield) में भी यही guard है: यदि credit receiver TIP3 नहीं है, तो credit को carry बदले बिना processed mark कर दिया जाता है।
इसका अर्थ:
- TIP1/TIP2 users carryLeft/carryRight (yield carry) जमा नहीं करते।
- TIP1/TIP2 investments XP “बना” सकते हैं, लेकिन वास्तविक XP credit केवल उस ancestor/placement node को मिलता है जो TIP3 हो।
5) Yield matching (10 XP + 10 XP → 10 USDO)
Yield worker XPCredit records (internal name: xp) पर काम करता है।
- हर credit
carryLeftयाcarryRightबढ़ाता है। - Pair size fixed है: 10 XP।
- प्रत्येक matched pair के लिए payout fixed है: 10 USDO।
- Matching के बाद carries घटते हैं और payout
carryYeldUsdoमें जुड़ता है।
6) Weekly payout cap (Reward levels)
carryYeldUsdo तुरंत “balance” नहीं बनता। भुगतान payoutCarryYeld job से होता है:
- प्रत्येक उपयोगकर्ता का reward level (1..4),
userRewardStatusमें होता है। - प्रत्येक level का weekly max payout (defaults):
- L1: 2000 USDO/week
- L2: 4000 USDO/week
- L3: 6000 USDO/week
- L4: 8000 USDO/week
- यदि उपयोगकर्ता का carryYeld शेष weekly allowance से अधिक है, overflow burn हो जाता है (भुगतान नहीं होता)।
- Weekly payout progress
yieldAccount.weeklyPayoutUsdo+weekKeyसे स्टोर होता है।
7) Auto payout schedule
- यदि Block settings में
yieldAutoPayoutEnabled=trueहै, तो cron pattern (dayOfWeek/hour/minute) के साथ queue में repeat jobpayoutCarryYeldजोड़ा जाता है। - यदि disabled है, तो repeat job best-effort आधार पर हटा दिया जाता है।
8) TIP upgrade का carry पर प्रभाव
जब उपयोगकर्ता का overall tier बढ़ता है:
- Pending XP credits को processed mark किया जाता है ताकि पुराने state से payout न हो।
yieldAccount.carryLeftXP/carryRightXPको 0 पर reset किया जाता है।- Investment create flow में
carryYeldUsdoभी 0 पर reset होता है (upgrade endpoint को छोड़कर, जहाँ केवल left/right carry reset होता है)।