iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0
Web 3

Web3 X 公共財系列 第 18

Day 18 - Strategies

  • 分享至 

  • xImage
  •  

大致分類

https://ithelp.ithome.com.tw/upload/images/20231003/20103331Myh3ZQW30L.png

Donation voting 系列: 任何藉由Token + 某種方式決議分配皆為此大類

  • donation-voting-merkle-base
  • donation-voting-merkle-distribution-direct-transfer
    • DonationVotingMerkleDistributionDirectTransferStrategy合約在Allo生態系統中提供了一種先進的資金分配方法,結合了Merkle樹、接收者狀態和精確的時間戳,以實現安全和公平的分配。此合約基於BaseStrategy,同時整合了OpenZeppelin的ReentrancyGuard和Multicall庫,確保提高了安全性,防止了重入攻擊,並優化了批量操作。
  • donation-voting-merkle-distribution-vault:
    -

QV 系列:

  • QV Base:
    • QVBaseStrategy是平方方投票策略的基礎合約。它擴展了BaseStrategy合約。它被設計為其他合約繼承的基礎合約。它包括用於接收者註冊、分配者分配和支付分發的功能。它還包括一個供池管理器審查和更新接收者狀態的審查機制。它使用一個自定義的InternalRecipientStatus枚舉來進行內部狀態管理。它強烈注重模塊化和可重用性,許多功能都被標記為虛擬。
  • QV Simple:
    • QVSimpleStrategy是一個Solidity智能合約,它擴展了QVBaseStrategy合約,並提供了一個平方方投票策略的簡化版本。此合約包括管理分配者、使用二次方投票算法分配投票以及自定義語音信用分配的功能。

RFP 系列:

  • RFP-simple
    • RFPSimpleStrategy合約代表了一個針對提案請求(RFP)分配的智能合約,具有里程碑提交和管理功能。它擴展了BaseStrategy合約的功能,並整合了專為管理接收者註冊、里程碑提交和RFP審查而量身定制的功能。該合約還整合了ReentrancyGuard庫以防止重入攻擊。
  • RFP-committee
    • RFPCommitteeStrategy合約擴展了RFPSimpleStrategy合約的功能,以實施一種策略,其中一個委員會的成員投票選擇RFP分配的接收者。該合約通過引入投票機制和閾值來增強基礎策略,以確定被接受的接收者。

POC 系列: 正在實驗中的新機制

  • DirectGrantsSimpleStrategy
    • 該合約在Allo生態系內管理直接授予接收者的分配。它擴展了BaseStrategy合約的功能,並整合了專為管理接收者註冊、里程碑提交和直接撥款審查而量身定制的功能。該合約還包括ReentrancyGuardy資料庫,以防止re-reentrant攻擊。
  • Donation Voting 任何藉由Token + 某種方式決議分配皆為此大類
    • 考量大多數著名的QF公式在計算上過於昂貴,無法以合理的成本在鏈上計算。作為最終完全在鏈上的QF解決方案的一個步驟,該策略作為混合解決方案運作:A.投票在鏈上記錄 > B.分配在鏈下計算 > C. 最終分配在鏈上記錄
  • Donation Voting Custom Registry
    • 這種捐款投票策略包括一個非常簡單的註冊合約的步驟。該註冊合約是一個POC,它假設擁有者角色是一個治理合約,如Governor Bravo。分配策略要求一個地址必須在註冊表中列出才能成為接收者。
  • Proportional layout
    • 這種捐款投票策略包括一個非常簡單的註冊合約的實現。該註冊合約是一個概念驗證,它假設擁有者角色是一個治理合約,如Governor Bravo。下面描述的分配策略要求一個地址必須在註冊表中列出才能成為接收者。
  • QV-governance
    • 這種策略使用治理代幣來限制分配,並給予合格的分配者一定數量的語音信用,等於他們的代幣持有量。池的資金按照每個項目收到的投票數量按比例分配。

用於此策略的代幣必須實現getPastVotes(address account, uint256 timepoint)功能,如EIP-5808中所指定。
** EIP-5808

  • QV-hackthon
    • 這種策略旨在為黑客松的獲勝者提供分配。組織者可以以程式化的方式指定誰是合格的接收者,並決定使用Passport來限制分配。池資金根據每個接收者在平方方投票中的位置按層分配。
  • QV-NFT tiered
    • 這種策略使用NFT來限制分配,並允許不同NFT的持有者擁有不同數量的點數。池的資金按照每個項目收到的投票數量按平方投票法比例分配,但對一個接收者可以收到的池的最大金額設有上限。
  • sablier-v2
    • Sablier是一個代幣流媒體協議,允許按秒計費的支付。此集成允許Allo池管理器使用特定的持續時間和自定義分發方法創建流:
      • LockupLinearStrategy:用於線性支付流媒體
      • LockupDynamicStrategy:用於自定義支付流媒體曲線
    • 兩種策略都調用創建函數,將開始時間設置為block.timestamp:
      • createWithDurations
      • createWithDeltas
    • 視覺圖像可以更清楚地了解您可以創建的分發曲線類型。有關更多詳細信息,請參考Sablier的文檔,可在docs.sablier.com上找到。這些策略假設投票系統和分配計算是在鏈下進行的。然後,一旦撥款分發,所有計算都由Sablier協議在鏈上管理。
  • Wrapped Voting with NFT Mint

上一篇
Day 17 - BaseStrategy.sol
下一篇
Day 19 細看BaseStrategy .sol -> QVbase.sol -> QVsimple.sol
系列文
Web3 X 公共財30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言