llamaxyz / llama

Llama is an onchain governance and access control framework for smart contracts.
https://llama.xyz
MIT License
47 stars 5 forks source link

feat: add new relative strategy implementations #417

Closed AustinGreen closed 1 year ago

AustinGreen commented 1 year ago

https://github.com/code-423n4/2023-06-llama-findings/issues/203#issuecomment-1616683309

We refactored strategies so there's a LlamaRelativeStrategyBase.sol and LlamaAbsoluteStrategyBase.sol that our five strategy logics inherit from. Relative strategies derive their quorum from a percentage of total quantity or total number of holders of the (dis)approval role. Absolute strategies define (dis)approval thresholds as absolute thresholds. The new strategies added in this PR are:

We will also use LlamaRelativeQuantityQuorum as the default recommended strategy

AustinGreen commented 1 year ago

We should use a LlamaRelativeStrategyBase.sol similar to LlamaAbsoluteStrategyBase.sol. The differences between the three relative strategies are very minor.