GenericGovernor https://docs.hazbase.com/smart-contracts/contracts/generic-governor/ SMART CONTRACTS ← コントラクト一覧 GenericGovernor 提案・投票・実行を一つの議決フローで扱う。 全体像 コントラクト一覧 用途から選ぶ 権限・運用設計 議決・ガバナンス GenericGovernor .sol @hazbase/kit @ 0.9.0 役割と使いどころ 参加者の投票によって設定変更や資金操作を承認する構成に利用できます。Strategyが票の重みを、TimelockControllerが実行までの待機を担います。 接続・設定のポイント 投票トークン、投票期間、定足数、実行権限を対応づけます。投票可決とトランザクション実行は別の状態です。 主要なSDK操作 @hazbase/kit@0.9.0のGenericGovernorHelperから利用する操作です。以下はメソッドの型定義です。引数の構造と全操作はSDKリファレンスで確認できます。 typescript import { GenericGovernorHelper } from '@hazbase/kit' ; propose typescript async propose ( p : ProposalArgs ) : Promise < bigint > castVote typescript 1 2 3 4 async castVote ( proposalId : bigint | number , support : 0 | 1 | 2 ) : Promise < TransactionReceipt > queue typescript async queue ( proposalId : bigint | number ) : Promise < bigint | null > execute typescript async execute ( proposalId : bigint | number ) : Promise < TransactionReceipt > 引数・戻り値・全メソッドを見る 組み合わせるコントラクト FlexibleToken 数量・残高で表す権利やポイントを発行・移転する。 Strategy 投票の重み・定足数・提案条件の計算方法を定める。 TimelockController 承認済みの操作に待機期間を設けて実行する。 MetaGovernor 複数の投票系統を組み合わせて議決を確定する。 実装につなげる コミュニティ・ガバナンス データの持ち方、処理の順序、SDKコードを通じて、アプリケーションへの組み込み方を確認できます。 実装パターンを読む 仕様とソースコード 掲載するSolidityソースは下記のリビジョンを参照しています。SDKの対応バージョンと、接続先ネットワークの実装アドレス・ABIを合わせて参照できます。 generic-governor/contracts/GenericGovernor.sol ソースリビジョン : b53a5b5 ← コントラクト一覧に戻る 権限・運用設計