Eligibility Parameters
Signals uses the same ParticipantRequirements structure for both proposerRequirements and supporterRequirements in BoardConfig.
struct ParticipantRequirements {
address token; // Token used for eligibility checks
uint256 minBalance; // Minimum current balance required
uint256 minHoldingDuration; // Minimum blocks tokens must be held (requires IVotes)
uint256 minLockAmount; // Minimum tokens that must be locked
}Rules Derived From Fields
minBalance == 0andminHoldingDuration == 0: no balance requirement.minBalance > 0andminHoldingDuration == 0: current balance check only.minBalance > 0andminHoldingDuration > 0: historical balance check (requiresIVoteson the configured token).minLockAmountenforces a minimum lock amount when proposing with a lock or supporting.
Constraints
tokenmust be set (cannot beaddress(0)).minHoldingDuration > 0requiresminBalance > 0and anIVotes-compatible token.minLockAmountmust be ≤minBalance.
