Skip to content

FtsoManager#

FTSO Manager contract.

It is in charge of:

  • Defining reward epochs (few days).
  • Choosing a single block each reward epoch that represents vote power of this epoch.
  • Keeping track of all FTSO contracts.
  • Every price epoch (few minutes):
    • Randomly choose one FTSO for rewarding calculations.
    • Trigger finalize price reveal epoch.
    • Determine addresses and reward weights and triggers reward distribution.

Functions#

activate#

Defined in FtsoManager (Docs, Source).

function activate(
) external;

Activates FTSO manager (daemonize will run jobs).

Only governance can call this method.

active#

Defined in IFtsoManager (Docs, Source).

function active(
) external view returns (
    bool);

Returns whether the FTSO Manager is active or not.

Returns Type Description
[0] bool bool Active status.

addFtso#

Defined in FtsoManager (Docs, Source).

function addFtso(
    contract IIFtso _ftso
) external;

Adds FTSO to the list of managed FTSOs, to support a new price pair. All FTSOs in a multi-asset FTSO must be managed by the same FTSO manager.

Only governance can call this method.

Parameters Type Description
_ftso contract IIFtso FTSO contract address to add.

addFtsosBulk#

Defined in FtsoManager (Docs, Source).

function addFtsosBulk(
    contract IIFtso[] _ftsos
) external;

Adds a list of FTSOs to the list of managed FTSOs, to support new price pairs. All FTSOs in a multi-asset FTSO must be managed by the same FTSO manager.

Only governance can call this method.

Parameters Type Description
_ftsos contract IIFtso[] Array of FTSO contract addresses to add.

cancelGovernanceCall#

Defined in GovernedBase (Docs, Source).

function cancelGovernanceCall(
    bytes4 _selector
) external;

Cancel a timelocked governance call before it has been executed.

Only governance can call this method.

Parameters Type Description
_selector bytes4 The method selector.

constructor#

Defined in FtsoManager (Docs, Source).

constructor(
    address _governance,
    contract FlareDaemon _flareDaemon,
    address _addressUpdater,
    contract IIFtsoManagerV1 _oldFtsoManager,
    uint256 _firstPriceEpochStartTs,
    uint256 _priceEpochDurationSeconds,
    uint256 _revealEpochDurationSeconds,
    uint256 _firstRewardEpochStartTs,
    uint256 _rewardEpochDurationSeconds,
    uint256 _votePowerIntervalFraction
) public;

constructor#

Defined in GovernedAndFlareDaemonized (Docs, Source).

constructor(
    address _governance,
    contract FlareDaemon _flareDaemon
) public;

constructor#

Defined in Governed (Docs, Source).

constructor(
    address _governance
) public;
Parameters Type Description
_governance address Governance contract. Must not be zero.

currentRewardEpochEnds#

Defined in IIFtsoManager (Docs, Source).

function currentRewardEpochEnds(
) external view returns (
    uint256);

Returns when the current reward epoch finishes.

Returns Type Description
[0] uint256 uint256 Time in seconds since the UNIX epoch when the current reward epoch will finish.

daemonize#

Defined in FtsoManager (Docs, Source).

function daemonize(
) external returns (
    bool);

Implement this function to receive a trigger from the FlareDaemon. The trigger method is called by the validator right at the end of block state transition.

Only flareDaemon can call this method.

Returns Type Description
[0] bool bool Whether the contract is still active after the call. Currently unused.

deactivateFtsos#

Defined in FtsoManager (Docs, Source).

function deactivateFtsos(
    contract IIFtso[] _ftsos
) external;

Deactivates FTSOs that are no longer used on FTSO registry. Only governance can call this method.

Parameters Type Description
_ftsos contract IIFtso[] Array of FTSO contract addresses to deactivate.

executeGovernanceCall#

Defined in GovernedBase (Docs, Source).

function executeGovernanceCall(
    bytes4 _selector
) external;

Execute the timelocked governance calls once the timelock period expires.

Only executor can call this method.

Parameters Type Description
_selector bytes4 The method selector (only one timelocked call per method is stored).

ftsoRegistry#

Defined in FtsoManager (Docs, Source).

function ftsoRegistry(
) external view returns (
    contract IIFtsoRegistry);

Returns the FtsoRegistry contract address.

getAddressUpdater#

Defined in AddressUpdatable (Docs, Source).

function getAddressUpdater(
) public view returns (
    address _addressUpdater);

Returns the configured address updater.

Returns Type Description
_addressUpdater address The AddresUpdater contract that can update our contract address list, as a response to a governance call.

getContractName#

Defined in FtsoManager (Docs, Source).

function getContractName(
) external pure returns (
    string);

Implement this function to allow updating daemonized contracts through the AddressUpdater.

Returns Type Description
[0] string string Contract name.

getCurrentPriceEpochData#

Defined in FtsoManager (Docs, Source).

function getCurrentPriceEpochData(
) external view returns (
    uint256 _priceEpochId,
    uint256 _priceEpochStartTimestamp,
    uint256 _priceEpochEndTimestamp,
    uint256 _priceEpochRevealEndTimestamp,
    uint256 _currentTimestamp);

Returns timing information for the current price epoch. All intervals are half-closed: end time is not included. All timestamps are in seconds since UNIX epoch.

See the FTSO page for information about the different submission phases.

Returns Type Description
_priceEpochId uint256 Price epoch ID.
_priceEpochStartTimestamp uint256 Beginning of the commit phase.
_priceEpochEndTimestamp uint256 End of the commit phase.
_priceEpochRevealEndTimestamp uint256 End of the reveal phase.
_currentTimestamp uint256 Current time.

getCurrentPriceEpochId#

Defined in FtsoManager (Docs, Source).

function getCurrentPriceEpochId(
) external view returns (
    uint256 _priceEpochId);

Returns current price epoch ID.

Returns Type Description
_priceEpochId uint256 Currently running epoch ID. IDs are consecutive numbers starting from zero.

getCurrentRewardEpoch#

Defined in FtsoManager (Docs, Source).

function getCurrentRewardEpoch(
) external view returns (
    uint256);

Returns current reward epoch ID (the one currently running).

Returns Type Description
[0] uint256 Reward epoch ID. A monotonically increasing integer.

getElasticBandWidthPPMFtso#

Defined in FtsoManager (Docs, Source).

function getElasticBandWidthPPMFtso(
    contract IIFtso _ftso
) external view returns (
    uint256);

Returns the secondary band's width in PPM (parts-per-million) of the median value, for a given FTSO.

Parameters Type Description
_ftso contract IIFtso The queried FTSO contract address.
Returns Type Description
[0] uint256 uint256 Secondary band width in PPM. To obtain the actual band width, divide this number by 10^6 and multiply by the price median value.

getFallbackMode#

Defined in FtsoManager (Docs, Source).

function getFallbackMode(
) external view returns (
    bool _fallbackMode,
    contract IIFtso[] _ftsos,
    bool[] _ftsoInFallbackMode);

Returns whether the FTSO Manager is currently in fallback mode.

In this mode only submissions from trusted providers are used.

Returns Type Description
_fallbackMode bool True if fallback mode is enabled for the manager.
_ftsos contract IIFtso[] Array of all currently active FTSO assets.
_ftsoInFallbackMode bool[] Boolean array indicating which FTSO assets are in fallback mode. If the FTSO Manager is in fallback mode then ALL FTSOs are in fallback mode.

getFtsos#

Defined in FtsoManager (Docs, Source).

function getFtsos(
) external view returns (
    contract IIFtso[] _ftsos);

Returns the list of currently active FTSOs.

Returns Type Description
_ftsos contract IIFtso[] Array of contract addresses for the FTSOs.

getGovernanceParameters#

Defined in FtsoManager (Docs, Source).

function getGovernanceParameters(
) external view returns (
    uint256 _maxVotePowerNatThresholdFraction,
    uint256 _maxVotePowerAssetThresholdFraction,
    uint256 _lowAssetUSDThreshold,
    uint256 _highAssetUSDThreshold,
    uint256 _highAssetTurnoutThresholdBIPS,
    uint256 _lowNatTurnoutThresholdBIPS,
    uint256 _elasticBandRewardBIPS,
    uint256 _rewardExpiryOffsetSeconds,
    address[] _trustedAddresses,
    bool _initialized,
    bool _changed);

Returns governance parameters for FTSOs.

Returns Type Description
_maxVotePowerNatThresholdFraction uint256 High threshold for native token vote power per voter.
_maxVotePowerAssetThresholdFraction uint256 High threshold for asset vote power per voter
_lowAssetUSDThreshold uint256 Threshold for low asset vote power (in scaled USD).
_highAssetUSDThreshold uint256 Threshold for high asset vote power (in scaled USD).
_highAssetTurnoutThresholdBIPS uint256 Threshold for high asset turnout (in BIPS).
_lowNatTurnoutThresholdBIPS uint256 Threshold for low nat turnout (in BIPS).
_elasticBandRewardBIPS uint256 Secondary reward band, where _elasticBandRewardBIPS goes to the secondary band and 10000 - _elasticBandRewardBIPS to the primary (IQR) band.
_rewardExpiryOffsetSeconds uint256 Reward epochs closed earlier than block.timestamp - _rewardExpiryOffsetSeconds expire.
_trustedAddresses address[] Trusted addresses will be used as a fallback mechanism for setting the price.
_initialized bool
_changed bool

getLastUnprocessedPriceEpochData#

Defined in FtsoManager (Docs, Source).

function getLastUnprocessedPriceEpochData(
) external view returns (
    uint256 _lastUnprocessedPriceEpoch,
    uint256 _lastUnprocessedPriceEpochRevealEnds,
    bool _lastUnprocessedPriceEpochInitialized);

Returns information regarding the currently unprocessed price epoch. This epoch is not necessarily the last one, in case the network halts for some time due to validator node problems, for example.

Returns Type Description
_lastUnprocessedPriceEpoch uint256 ID of the price epoch that is currently waiting finalization.
_lastUnprocessedPriceEpochRevealEnds uint256 When that price epoch can be finalized, in seconds since UNIX epoch.
_lastUnprocessedPriceEpochInitialized bool Whether this price epoch has been already initialized and therefore it must be finalized before the corresponding reward epoch can be finalized.

getPriceEpochConfiguration#

Defined in FtsoManager (Docs, Source).

function getPriceEpochConfiguration(
) external view returns (
    uint256 _firstPriceEpochStartTs,
    uint256 _priceEpochDurationSeconds,
    uint256 _revealEpochDurationSeconds);

Returns the current values for price epoch timing configuration.

See the FTSO page for information about the different submission phases.

Returns Type Description
_firstPriceEpochStartTs uint256 Timestamp, in seconds since UNIX epoch, of the first price epoch.
_priceEpochDurationSeconds uint256 Duration in seconds of the commit phase.
_revealEpochDurationSeconds uint256 Duration in seconds of the reveal phase.

getPriceSubmitter#

Defined in FtsoManager (Docs, Source).

function getPriceSubmitter(
) external view returns (
    contract IIPriceSubmitter);

Returns the PriceSubmitter contract.

getRewardEpochConfiguration#

Defined in FtsoManager (Docs, Source).

function getRewardEpochConfiguration(
) external view returns (
    uint256 _firstRewardEpochStartTs,
    uint256 _rewardEpochDurationSeconds);

Returns the current values for reward epoch timing configuration.

See the Reward epochs box.

Returns Type Description
_firstRewardEpochStartTs uint256 Timestamp, in seconds since UNIX epoch, of the first reward epoch.
_rewardEpochDurationSeconds uint256 Duration in seconds of the reward epochs.

getRewardEpochData#

Defined in FtsoManager (Docs, Source).

function getRewardEpochData(
    uint256 _rewardEpochId
) public view returns (
    struct IIFtsoManager.RewardEpochData);

Returns data regarding a specific reward epoch ID.

Parameters Type Description
_rewardEpochId uint256 Epoch ID.
Returns Type Description
[0] struct IIFtsoManager.RewardEpochData RewardEpochData Its associated data.

getRewardEpochToExpireNext#

Defined in FtsoManager (Docs, Source).

function getRewardEpochToExpireNext(
) external view returns (
    uint256);

Return reward epoch that will expire next, when a new reward epoch is initialized.

Reward epochs older than 90 days expire, and any unclaimed rewards in them become inaccessible.

Returns Type Description
[0] uint256 uint256 Reward epoch ID.

getRewardEpochVotePowerBlock#

Defined in FtsoManager (Docs, Source).

function getRewardEpochVotePowerBlock(
    uint256 _rewardEpoch
) external view returns (
    uint256 _votepowerBlock);

Returns the vote power block that was used for a past reward epoch.

Parameters Type Description
_rewardEpoch uint256 The queried reward epoch ID.
Returns Type Description
_votepowerBlock uint256 uint256 The block number of that reward epoch's vote power block.

getRewardExpiryOffsetSeconds#

Defined in FtsoManager (Docs, Source).

function getRewardExpiryOffsetSeconds(
) external view returns (
    uint256);

Returns the currently configured reward expiration time.

Returns Type Description
[0] uint256 uint256 Unclaimed rewards accrued in reward epochs more than this amount of seconds in the past expire and become inaccessible.

getUpdateGovernanceParametersTs#

Defined in FtsoManager (Docs, Source).

function getUpdateGovernanceParametersTs(
) external view returns (
    uint256);

Returns the timestamp, in seconds since UNIX epoch, when the scheduled new settings will take effect.

getVotePowerIntervalFraction#

Defined in FtsoManager (Docs, Source).

function getVotePowerIntervalFraction(
) external view returns (
    uint256);

governance#

Defined in GovernedBase (Docs, Source).

function governance(
) public view returns (
    address);

Returns the current effective governance address.

notInitializedFtsos#

Defined in FtsoManager (Docs, Source).

function notInitializedFtsos(
    contract IIFtso _ftso
) external view returns (
    bool);

Returns whether an FTSO has been initialized.

Returns Type Description
[0] bool bool Initialization state.

removeFtso#

Defined in FtsoManager (Docs, Source).

function removeFtso(
    contract IIFtso _ftso
) external;

Removes an FTSO from the list of managed FTSOs. Reverts if FTSO is used in a multi-asset FTSO. Deactivates the _ftso.

Only governance can call this method.

Parameters Type Description
_ftso contract IIFtso FTSO contract address to remove.

replaceFtso#

Defined in FtsoManager (Docs, Source).

function replaceFtso(
    contract IIFtso _ftsoToAdd,
    bool _copyCurrentPrice,
    bool _copyAssetOrAssetFtsos
) external;

Replaces one FTSO with another with the same symbol. All FTSOs in a multi-asset FTSO must be managed by the same FTSO manager. Deactivates the old FTSO.

Only governance can call this method.

Parameters Type Description
_ftsoToAdd contract IIFtso FTSO contract address to add. An existing FTSO with the same symbol will be removed.
_copyCurrentPrice bool
_copyAssetOrAssetFtsos bool

replaceFtsosBulk#

Defined in FtsoManager (Docs, Source).

function replaceFtsosBulk(
    contract IIFtso[] _ftsosToAdd,
    bool _copyCurrentPrice,
    bool _copyAssetOrAssetFtsos
) external;

Replaces a list of FTSOs with other FTSOs with the same symbol. All FTSOs in a multi-asset FTSO must be managed by the same FTSO manager. Deactivates the old FTSOs.

Only governance can call this method.

Parameters Type Description
_ftsosToAdd contract IIFtso[] Array of FTSO contract addresses to add. Every existing FTSO with the same symbols will be removed.
_copyCurrentPrice bool
_copyAssetOrAssetFtsos bool

rewardEpochDurationSeconds#

Defined in IIFtsoManager (Docs, Source).

function rewardEpochDurationSeconds(
) external view returns (
    uint256);

Currently configured reward epoch duration.

Returns Type Description
[0] uint256 uint256 Reward epoch duration, in seconds.

rewardEpochs#

Defined in FtsoManager (Docs, Source).

function rewardEpochs(
    uint256 _rewardEpochId
) external view returns (
    uint256 _votepowerBlock,
    uint256 _startBlock,
    uint256 _startTimestamp);

Returns information about a reward epoch.

Parameters Type Description
_rewardEpochId uint256 The epoch ID to query.
Returns Type Description
_votepowerBlock uint256 The vote power block of the epoch.
_startBlock uint256 The first block of the epoch.
_startTimestamp uint256 Timestamp of the epoch start, in seconds since UNIX epoch.

rewardEpochsStartTs#

Defined in IIFtsoManager (Docs, Source).

function rewardEpochsStartTs(
) external view returns (
    uint256);

Time when the current reward epoch started.

Returns Type Description
[0] uint256 uint256 Timestamp, in seconds since UNIX epoch.

setElasticBandWidthPPMFtsos#

Defined in FtsoManager (Docs, Source).

function setElasticBandWidthPPMFtsos(
    uint256 _updateTs,
    contract IIFtso[] _ftsos,
    uint256[] _widths
) external;

Sets elastic band widths in PPM (parts-per-million) for given FTSOs. Only governance can call this method.

Parameters Type Description
_updateTs uint256 Timestamp when the changes will take effect, in seconds from UNIX epoch.
_ftsos contract IIFtso[] Array of FTSO contract addresses to update.
_widths uint256[] Array of secondary band widths in PPM. To obtain the actual band width, this number is divided by 10^6 and multiplied by the price median value.

setFallbackMode#

Defined in FtsoManager (Docs, Source).

function setFallbackMode(
    bool _fallbackMode
) external;

Sets whether the FTSO Manager is currently in fallback mode. In this mode only submissions from trusted providers are used.

Only governance can call this method.

Parameters Type Description
_fallbackMode bool True if fallback mode is enabled.

setFtsoAsset#

Defined in FtsoManager (Docs, Source).

function setFtsoAsset(
    contract IIFtso _ftso,
    contract IIVPToken _asset
) external;

Sets the asset tracked by an FTSO.

Only governance can call this method.

Parameters Type Description
_ftso contract IIFtso The FTSO contract address.
_asset contract IIVPToken The VPToken contract address of the asset to track.

setFtsoAssetFtsos#

Defined in FtsoManager (Docs, Source).

function setFtsoAssetFtsos(
    contract IIFtso _ftso,
    contract IIFtso[] _assetFtsos
) external;

Sets an array of FTSOs to be tracked by a multi-asset FTSO. FTSOs implicitly determine the FTSO assets.

Only governance can call this method.

Parameters Type Description
_ftso contract IIFtso The multi-asset FTSO contract address.
_assetFtsos contract IIFtso[] Array of FTSOs to be tracked.

setFtsoFallbackMode#

Defined in FtsoManager (Docs, Source).

function setFtsoFallbackMode(
    contract IIFtso _ftso,
    bool _fallbackMode
) external;

Sets whether an FTSO is currently in fallback mode. In this mode only submissions from trusted providers are used.

Only governance can call this method.

Parameters Type Description
_ftso contract IIFtso The FTSO contract address.
_fallbackMode bool Fallback mode.

setGovernanceParameters#

Defined in FtsoManager (Docs, Source).

function setGovernanceParameters(
    uint256 _updateTs,
    uint256 _maxVotePowerNatThresholdFraction,
    uint256 _maxVotePowerAssetThresholdFraction,
    uint256 _lowAssetUSDThreshold,
    uint256 _highAssetUSDThreshold,
    uint256 _highAssetTurnoutThresholdBIPS,
    uint256 _lowNatTurnoutThresholdBIPS,
    uint256 _elasticBandRewardBIPS,
    uint256 _rewardExpiryOffsetSeconds,
    address[] _trustedAddresses
) external;

Sets governance parameters for FTSOs

Only governance can call this method.

Parameters Type Description
_updateTs uint256 Time, in seconds since UNIX epoch, when updated settings should be pushed to FTSOs.
_maxVotePowerNatThresholdFraction uint256 High threshold for native token vote power per voter.
_maxVotePowerAssetThresholdFraction uint256 High threshold for asset vote power per voter
_lowAssetUSDThreshold uint256 Threshold for low asset vote power (in scaled USD).
_highAssetUSDThreshold uint256 Threshold for high asset vote power (in scaled USD).
_highAssetTurnoutThresholdBIPS uint256 Threshold for high asset turnout (in BIPS).
_lowNatTurnoutThresholdBIPS uint256 Threshold for low nat turnout (in BIPS).
_elasticBandRewardBIPS uint256 Secondary reward band, where _elasticBandRewardBIPS goes to the secondary band and 10000 - _elasticBandRewardBIPS to the primary (IQR) band.
_rewardExpiryOffsetSeconds uint256 Reward epochs closed earlier than block.timestamp - _rewardExpiryOffsetSeconds expire.
_trustedAddresses address[] Trusted addresses will be used as a fallback mechanism for setting the price.

setInitialRewardData#

Defined in FtsoManager (Docs, Source).

function setInitialRewardData(
    uint256 _nextRewardEpochToExpire,
    uint256 _rewardEpochsLength,
    uint256 _currentRewardEpochEnds
) external;

Set reward data to values from old ftso manager. Can only be called before activation.

Only governance can call this method.

Parameters Type Description
_nextRewardEpochToExpire uint256 See getRewardEpochToExpireNext.
_rewardEpochsLength uint256 See getRewardEpochConfiguration.
_currentRewardEpochEnds uint256 See getCurrentRewardEpoch.

setRewardEpochDurationSeconds#

Defined in FtsoManager (Docs, Source).

function setRewardEpochDurationSeconds(
    uint256 _rewardEpochDurationSeconds
) external;

Sets the reward epoch duration. Only governance can call this method.

If the reward epoch is very short and the expiry offset is very long, the list of reward epochs to be checked becomes very long. Therefore reward epoch time has to be capped to expiry offset.

setUpdateOnRewardEpochSwitchover#

Defined in FtsoManager (Docs, Source).

function setUpdateOnRewardEpochSwitchover(
    contract IUpdateValidators _updateValidators
) external;

Unused.

setUseGoodRandom#

Defined in FtsoManager (Docs, Source).

function setUseGoodRandom(
    bool _useGoodRandom,
    uint256 _maxWaitForGoodRandomSeconds
) external;

Allow governance to switch to good random numbers only. Only governance can call this method.

See IFtsoManager.UseGoodRandomSet.

Parameters Type Description
_useGoodRandom bool Whether good random numbers should be used or not.
_maxWaitForGoodRandomSeconds uint256 Max time in seconds to wait for the good random. If there is none after given time, reward epoch finalization should proceed anyway.

setVotePowerIntervalFraction#

Defined in FtsoManager (Docs, Source).

function setVotePowerIntervalFraction(
    uint256 _votePowerIntervalFraction
) external;

showLastRevertedError#

Defined in RevertErrorTracking (Docs, Source).

function showLastRevertedError(
) external view returns (
    uint256[] _lastErrorBlock,
    uint256[] _numErrors,
    string[] _errorString,
    address[] _erroringContract,
    uint256 _totalRevertedErrors);

Returns latest error information. All arrays will contain only one entry.

Returns Type Description
_lastErrorBlock uint256[] Array of block numbers where the errors occurred.
_numErrors uint256[] Array of number of times same error with same contract address has been reverted.
_errorString string[] Array of revert error messages.
_erroringContract address[] Array of addresses of the reverting contracts.
_totalRevertedErrors uint256 Total number of revert errors across all contracts.

showRevertedErrors#

Defined in RevertErrorTracking (Docs, Source).

function showRevertedErrors(
    uint256 startIndex,
    uint256 numErrorTypesToShow
) public view returns (
    uint256[] _lastErrorBlock,
    uint256[] _numErrors,
    string[] _errorString,
    address[] _erroringContract,
    uint256 _totalRevertedErrors);

Returns latest errors.

Parameters Type Description
startIndex uint256 Starting index in the error list array.
numErrorTypesToShow uint256 Number of errors to show. The total amount can be found in errorData.
Returns Type Description
_lastErrorBlock uint256[] Array of block numbers where the errors occurred.
_numErrors uint256[] Array of number of times same error with same contract address has been reverted.
_errorString string[] Array of revert error messages.
_erroringContract address[] Array of addresses of the reverting contracts.
_totalRevertedErrors uint256 Total number of revert errors across all contracts.

switchToFallbackMode#

Defined in FtsoManager (Docs, Source).

function switchToFallbackMode(
) external returns (
    bool);

This function will be called after an error is caught in daemonize. It will switch the contract to a simpler fallback mode, which hopefully works when full mode doesn't. Not every contract needs to support fallback mode (FtsoManager does), so this method may be empty. Switching back to normal mode is left to the contract (typically a governed method call). This function may be called due to low-gas error, so it shouldn't use more than ~30.000 gas.

Only flareDaemon can call this method.

Returns Type Description
[0] bool True if switched to fallback mode, false if already in fallback mode or if fallback mode is not supported.

switchToProductionMode#

Defined in GovernedBase (Docs, Source).

function switchToProductionMode(
) external;

Enter the production mode after all the initial governance settings have been set. This enables timelocks and the governance can be obtained afterward by calling governanceSettings.getGovernanceAddress(). Emits GovernedProductionModeEntered.

updateContractAddresses#

Defined in AddressUpdatable (Docs, Source).

function updateContractAddresses(
    bytes32[] _contractNameHashes,
    address[] _contractAddresses
) external;

External method called from AddressUpdater only.

voterWhitelister#

Defined in FtsoManager (Docs, Source).

function voterWhitelister(
) external view returns (
    contract IIVoterWhitelister);

Returns the VoterWhitelister contract address.

Variables#

MAX_TRUSTED_ADDRESSES_LENGTH#

Defined in FtsoManager (Docs, Source).

    uint256 MAX_TRUSTED_ADDRESSES_LENGTH

Maximum number of trusted addresses allowed.

active#

Defined in FtsoManager (Docs, Source).

    bool active

Whether the FTSO Manager is active or not.

cleanupBlockNumberManager#

Defined in FtsoManager (Docs, Source).

    contract CleanupBlockNumberManager cleanupBlockNumberManager

Address of the CleanupBlockNumberManager contract.

currentRewardEpochEnds#

Defined in FtsoManager (Docs, Source).

    uint256 currentRewardEpochEnds

Timestamp when the current reward epoch finishes, in seconds since UNIX epoch.

errorData#

Defined in RevertErrorTracking (Docs, Source).

    struct RevertErrorTracking.LastErrorData errorData

Most recent error information.

flareDaemon#

Defined in GovernedAndFlareDaemonized (Docs, Source).

    contract FlareDaemon flareDaemon

The FlareDaemon contract, set at construction time.

governanceSettings#

Defined in GovernedBase (Docs, Source).

    contract IGovernanceSettings governanceSettings

Governance Settings.

lastRewardedFtsoAddress#

Defined in FtsoManager (Docs, Source).

    address lastRewardedFtsoAddress

Address of the FTSO contract that was last chosen for reward calculations.

maxWaitForGoodRandomSeconds#

Defined in FtsoManager (Docs, Source).

    uint256 maxWaitForGoodRandomSeconds

Used only when useGoodRandom flag is set.

oldFtsoManager#

Defined in FtsoManager (Docs, Source).

    contract IIFtsoManagerV1 oldFtsoManager

Previous FTSO Manager, in case of a redeployment.

priceSubmitter#

Defined in FtsoManager (Docs, Source).

    contract IIPriceSubmitter priceSubmitter

Address of the PriceSubmitter contract.

productionMode#

Defined in GovernedBase (Docs, Source).

    bool productionMode

When true, governance is enabled and cannot be disabled. See switchToProductionMode.

rewardEpochDurationSeconds#

Defined in FtsoManager (Docs, Source).

    uint256 rewardEpochDurationSeconds

Duration of reward epochs, in seconds.

rewardEpochsStartTs#

Defined in FtsoManager (Docs, Source).

    uint256 rewardEpochsStartTs

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

rewardManager#

Defined in FtsoManager (Docs, Source).

    contract IIFtsoRewardManager rewardManager

Address of the RewardManager contract.

supply#

Defined in FtsoManager (Docs, Source).

    contract IISupply supply

timelockedCalls#

Defined in GovernedBase (Docs, Source).

    mapping(bytes4 => struct GovernedBase.TimelockedCall) timelockedCalls

List of pending timelocked governance calls.

updateOnRewardEpochSwitchover#

Defined in FtsoManager (Docs, Source).

    contract IUpdateValidators updateOnRewardEpochSwitchover

Unused.

useGoodRandom#

Defined in FtsoManager (Docs, Source).

    bool useGoodRandom

Whether use of good random numbers is enforced. See IFtsoManager.UseGoodRandomSet.

waitingForGoodRandomSinceTs#

Defined in FtsoManager (Docs, Source).

    uint256 waitingForGoodRandomSinceTs

Used only when useGoodRandom flag is set.