Agent documentation index: llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Skip to main content

IFlareSystemsManager

Manages system protocols like the Signing Policy Definition, Uptime Voting, and Reward Voting.

Sourced from IFlareSystemsManager.sol on GitHub.

Functions​

firstRewardEpochStartTs​

Timestamp when the first reward epoch started, in seconds since UNIX epoch.

function firstRewardEpochStartTs(
) external view returns (
uint64
);

firstVotingRoundStartTs​

Timestamp when the first voting epoch started, in seconds since UNIX epoch.

function firstVotingRoundStartTs(
) external view returns (
uint64
);

getCurrentRewardEpoch​

Returns the current reward epoch id (backwards compatibility).

function getCurrentRewardEpoch(
) external view returns (
uint256
);

getCurrentRewardEpochId​

Returns the current reward epoch id.

function getCurrentRewardEpochId(
) external view returns (
uint24
);

getCurrentVotingEpochId​

Returns the current voting epoch id.

function getCurrentVotingEpochId(
) external view returns (
uint32
);

getSeed​

Returns the seed for given reward epoch id.

function getSeed(
uint256 _rewardEpochId
) external view returns (
uint256
);

getStartVotingRoundId​

Returns the start voting round id for given reward epoch id.

function getStartVotingRoundId(
uint256 _rewardEpochId
) external view returns (
uint32
);

getThreshold​

Returns the threshold for given reward epoch id.

function getThreshold(
uint256 _rewardEpochId
) external view returns (
uint16
);

getVotePowerBlock​

Returns the vote power block for given reward epoch id.

function getVotePowerBlock(
uint256 _rewardEpochId
) external view returns (
uint64 _votePowerBlock
);

getVoterRegistrationData​

Returns voter rgistration data for given reward epoch id.

function getVoterRegistrationData(
uint256 _rewardEpochId
) external view returns (
uint256 _votePowerBlock,
bool _enabled
);

Parameters​

  • _rewardEpochId: Reward epoch id.

Returns​

  • _votePowerBlock: Vote power block.
  • _enabled: Indicates if voter registration is enabled.

isVoterRegistrationEnabled​

Indicates if voter registration is currently enabled.

function isVoterRegistrationEnabled(
) external view returns (
bool
);

rewardEpochDurationSeconds​

Duration of reward epoch, in seconds.

function rewardEpochDurationSeconds(
) external view returns (
uint64
);

signNewSigningPolicy​

Method for collecting signatures for the new signing policy.

function signNewSigningPolicy(
uint24 _rewardEpochId,
bytes32 _newSigningPolicyHash,
struct IFlareSystemsManager.Signature _signature
) external;

Parameters​

  • _rewardEpochId: Reward epoch id of the new signing policy.
  • _newSigningPolicyHash: New signing policy hash.
  • _signature: Signature.

signRewards​

Method for collecting signatures for the rewards.

function signRewards(
uint24 _rewardEpochId,
struct IFlareSystemsManager.NumberOfWeightBasedClaims[] _noOfWeightBasedClaims,
bytes32 _rewardsHash,
struct IFlareSystemsManager.Signature _signature
) external;

Parameters​

  • _rewardEpochId: Reward epoch id of the rewards.
  • _noOfWeightBasedClaims: Number of weight based claims list.
  • _rewardsHash: Rewards hash.
  • _signature: Signature.

signUptimeVote​

Method for collecting signatures for the uptime vote.

function signUptimeVote(
uint24 _rewardEpochId,
bytes32 _uptimeVoteHash,
struct IFlareSystemsManager.Signature _signature
) external;

Parameters​

  • _rewardEpochId: Reward epoch id of the uptime vote.
  • _uptimeVoteHash: Uptime vote hash.
  • _signature: Signature.

submitUptimeVote​

Method for submitting node ids with high enough uptime.

function submitUptimeVote(
uint24 _rewardEpochId,
bytes20[] _nodeIds,
struct IFlareSystemsManager.Signature _signature
) external;

Parameters​

  • _rewardEpochId: Reward epoch id of the uptime vote.
  • _nodeIds: Node ids with high enough uptime.
  • _signature: Signature.

votingEpochDurationSeconds​

Duration of voting epoch, in seconds.

function votingEpochDurationSeconds(
) external view returns (
uint64
);

Events​

RandomAcquisitionStarted​

Event emitted when random acquisition phase starts.

event RandomAcquisitionStarted(
uint24 rewardEpochId,
uint64 timestamp
)

RewardEpochStarted​

Event emitted when reward epoch starts.

event RewardEpochStarted(
uint24 rewardEpochId,
uint32 startVotingRoundId,
uint64 timestamp
)

RewardsSigned​

Event emitted when rewards are signed.

event RewardsSigned(
uint24 rewardEpochId,
address signingPolicyAddress,
address voter,
bytes32 rewardsHash,
struct IFlareSystemsManager.NumberOfWeightBasedClaims[] noOfWeightBasedClaims,
uint64 timestamp,
bool thresholdReached
)

SignUptimeVoteEnabled​

Event emitted when it is time to sign uptime vote.

event SignUptimeVoteEnabled(
uint24 rewardEpochId,
uint64 timestamp
)

SigningPolicySigned​

Event emitted when signing policy is signed.

event SigningPolicySigned(
uint24 rewardEpochId,
address signingPolicyAddress,
address voter,
uint64 timestamp,
bool thresholdReached
)

UptimeVoteSigned​

Event emitted when uptime vote is signed.

event UptimeVoteSigned(
uint24 rewardEpochId,
address signingPolicyAddress,
address voter,
bytes32 uptimeVoteHash,
uint64 timestamp,
bool thresholdReached
)

UptimeVoteSubmitted​

Event emitted when uptime vote is submitted.

event UptimeVoteSubmitted(
uint24 rewardEpochId,
address signingPolicyAddress,
address voter,
bytes20[] nodeIds,
uint64 timestamp
)

VotePowerBlockSelected​

Event emitted when vote power block is selected.

event VotePowerBlockSelected(
uint24 rewardEpochId,
uint64 votePowerBlock,
uint64 timestamp
)

Structures​

NumberOfWeightBasedClaims​

Number of weight based claims structure

struct NumberOfWeightBasedClaims {
uint256 rewardManagerId;
uint256 noOfWeightBasedClaims;
}

Signature​

Signature structure

struct Signature {
uint8 v;
bytes32 r;
bytes32 s;
}