Web3 और DApp विकास की मूल बातें · पाठ

प्रस्ताव और मतदान

गवर्नर कॉन्ट्रैक्ट

पाठ 3, कुल 4 में से13 चरण

प्रस्ताव और मतदान, CoddyKit पर Web3 और DApp विकास की मूल बातें का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Web3 और DApp विकास की मूल बातें सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Web3 और DApp विकास की मूल बातें पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

गवर्नेंस का जीवनचक्र

ऑन-चेन गवर्नेंस एक स्पष्ट जीवनचक्र का पालन करता है: प्रस्ताव देना, मतदान करना, कतार में लगाना, निष्पादित करना।

हर चरण को एक गवर्नर स्मार्ट कॉन्ट्रैक्ट संभालता है, जो नियमों को अपने-आप लागू करता है।

गवर्नर कॉन्ट्रैक्ट

OpenZeppelin का गवर्नर DAO मतदान के लिए मानक फ्रेमवर्क है। यह प्रस्तावों का प्रबंधन करता है, वोटों की गिनती करता है और निष्पादन शुरू करता है।

यह मॉड्यूलर है: आप इसमें वोट गिनने की रणनीति, एक टोकन और समय-संबंधी पैरामीटर जोड़ सकते हैं।

contract MyGovernor is
    Governor,
    GovernorVotes,
    GovernorVotesQuorumFraction,
    GovernorTimelockControl
{ /* ... */ }

प्रस्ताव बनाना

एक प्रस्ताव निष्पादित की जाने वाली कार्रवाइयों को एक साथ रखता है: लक्ष्य कॉन्ट्रैक्ट, कॉल डेटा और मान, साथ ही मनुष्यों के लिए पढ़ने योग्य विवरण।

governor.propose(
    [targetContract],   // addresses
    [0],                // ETH values
    [callData],         // encoded function calls
    "Increase reward rate to 5%"
);

मतदान विलंब

प्रस्ताव बनाए जाने के बाद मतदान शुरू होने से पहले एक मतदान विलंब बीतता है।

इससे सदस्यों को समीक्षा करने का समय मिलता है और स्नैपशॉट ब्लॉक को स्थिर होने का अवसर मिलता है, ताकि शेषराशि निश्चित हो जाए।

votingDelay  = 1 block   // wait before voting
votingPeriod = 50400 blocks // ~1 week of voting

वोट डालना

मतदान अवधि के दौरान सदस्य स्नैपशॉट ब्लॉक पर अपनी प्रतिनिधि-निर्धारित शक्ति के आधार पर वोट डालते हैं।

मानक विकल्प हैं: पक्ष में, विपक्ष में और तटस्थ।

governor.castVote(proposalId, 1);
// 0 = Against, 1 = For, 2 = Abstain

वोटों की गिनती और कोरम

मतदान समाप्त होने पर गवर्नर भारित वोटों की गिनती करता है। कोई प्रस्ताव तभी सफल होता है, जब उसके पक्ष में वोट विपक्ष में वोटों से अधिक हों और वह कोरम पूरा करता हो।

तटस्थ वोट आम तौर पर कोरम में गिने जाते हैं, लेकिन पक्ष-विपक्ष के निर्णय में नहीं।

प्रस्ताव की अवस्थाएँ

एक प्रस्ताव निर्धारित अवस्थाओं से गुजरता है:

  • लंबित — मतदान विलंब की प्रतीक्षा
  • सक्रिय — मतदान खुला है
  • पराजित या सफल
  • पहले कतारबद्ध, फिर निष्पादित

सफल प्रस्ताव को कतार में लगाना

सफल प्रस्ताव को चलाए जाने से पहले आम तौर पर टाइमलॉक में कतारबद्ध किया जाता है।

यह विलंब (जिसे अगले पाठ में समझाया जाएगा) एक सुरक्षा अवरोध है, जो बदलाव लागू होने से पहले उपयोगकर्ताओं को प्रतिक्रिया देने का समय देता है।

governor.queue(targets, values, calldatas, descHash);

निष्पादन

टाइमलॉक विलंब के बाद कोई भी व्यक्ति प्रस्ताव की कार्रवाइयों को ऑन-चेन पूरा करने के लिए execute कॉल कर सकता है।

बदलाव करने के लिए आवश्यक अनुमतियाँ गवर्नर (या उसका टाइमलॉक) रखता है।

governor.execute(targets, values, calldatas, descHash);
// the approved actions now run

गैस लागत और ऑफ-चेन मतदान

ऑन-चेन मतदान में हर वोट पर गैस खर्च होती है। लागत बचाने के लिए, कई DAO ऑफ-चेन विचार-विमर्श और संकेत (Snapshot) करते हैं तथा केवल अंतिम, बाध्यकारी कार्रवाइयों को ऑन-चेन भेजते हैं।

यह मिश्रित तरीका भागीदारी को सस्ता रखते हुए भरोसेमंद निष्पादन बनाए रखता है।

सब कुछ एक साथ

गवर्नर कॉन्ट्रैक्ट प्रस्ताव देने-मतदान-कतार-निष्पादन की प्रक्रिया को मानकीकृत करते हैं। मतदान विलंब, अवधि, कोरम और प्रस्ताव की अवस्थाएँ गवर्नेंस को अनुमानित और सुरक्षित बनाती हैं।

अगले चरण में हम निष्पादन से पहले की सुरक्षा परत, टाइमलॉक, पर ध्यान देंगे।

त्वरित जाँच

गवर्नेंस प्रक्रिया की अपनी समझ को परखें।

पुनरावलोकन: प्रस्ताव और मतदान

आपने सीखा कि:

  • गवर्नेंस प्रस्ताव देना, मतदान करना, कतार में लगाना, निष्पादित करना की प्रक्रिया का पालन करता है
  • गवर्नर कॉन्ट्रैक्ट नियमों को लागू करता है
  • मतदान विलंब और अवधि समय-क्रम तय करते हैं
  • सफलता के लिए बहुमत में पक्ष में वोट और कोरम आवश्यक हैं
  • प्रस्ताव निर्धारित अवस्थाओं से गुजरते हैं

अगला विषय: टाइमलॉक और सुरक्षित निष्पादन।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Web3 और DApp विकास की मूल बातें सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
29
पाठ
105

अक्सर पूछे जाने वाले प्रश्न

क्या “प्रस्ताव और मतदान” पाठ निःशुल्क है?

हाँ — Web3 और DApp विकास की मूल बातें अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “प्रस्ताव और मतदान” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Web3 और DApp विकास की मूल बातें पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“प्रस्ताव और मतदान” में मैं क्या सीखूँगा?

गवर्नर कॉन्ट्रैक्ट आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Web3 और DApp विकास की मूल बातें का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Web3 और DApp विकास की मूल बातें शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Web3 और DApp विकास की मूल बातें शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“प्रस्ताव और मतदान” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Web3 और DApp विकास की मूल बातें पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Web3 और DApp विकास की मूल बातें पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. DAO क्या है
  2. गवर्नेंस टोकन
  3. प्रस्ताव और मतदान
  4. टाइमलॉक और निष्पादन
← Web3 और DApp विकास की मूल बातें पर वापस जाएँ