Skip to main content

IMakinaGovernable

Git Source

Functions

mechanic

Address of the mechanic.

function mechanic() external view returns (address);

securityCouncil

Address of the security council.

function securityCouncil() external view returns (address);

riskManager

Address of the risk manager.

function riskManager() external view returns (address);

riskManagerTimelock

Address of the risk manager timelock.

function riskManagerTimelock() external view returns (address);

recoveryMode

True if the contract is in recovery mode, false otherwise.

function recoveryMode() external view returns (bool);

restrictedAccountingMode

True if the contract is in restricted accounting mode, false otherwise.

function restrictedAccountingMode() external view returns (bool);

isAccountingAgent

User => Whether the user is an accounting agent

function isAccountingAgent(address agent) external view returns (bool);

isOperator

User => Whether the user is the current operator The operator is either the mechanic or the security council depending on the recovery mode.

function isOperator(address user) external view returns (bool);

isAccountingAuthorized

User => Whether the user is authorized to perform accounting operations under current settings

function isAccountingAuthorized(address user) external view returns (bool);

setMechanic

Sets a new mechanic.

function setMechanic(address newMechanic) external;

Parameters

NameTypeDescription
newMechanicaddressThe address of new mechanic.

setSecurityCouncil

Sets a new security council.

function setSecurityCouncil(address newSecurityCouncil) external;

Parameters

NameTypeDescription
newSecurityCounciladdressThe address of the new security council.

setRiskManager

Sets a new risk manager.

function setRiskManager(address newRiskManager) external;

Parameters

NameTypeDescription
newRiskManageraddressThe address of the new risk manager.

setRiskManagerTimelock

Sets a new risk manager timelock.

function setRiskManagerTimelock(address newRiskManagerTimelock) external;

Parameters

NameTypeDescription
newRiskManagerTimelockaddressThe address of the new risk manager timelock.

setRecoveryMode

Sets the recovery mode.

function setRecoveryMode(bool enabled) external;

Parameters

NameTypeDescription
enabledboolTrue to enable recovery mode, false to disable it.

setRestrictedAccountingMode

Sets the restricted accounting mode.

function setRestrictedAccountingMode(bool enabled) external;

Parameters

NameTypeDescription
enabledboolTrue to enable restricted accounting mode, false to disable it.

addAccountingAgent

Adds a new accounting agent.

function addAccountingAgent(address newAgent) external;

Parameters

NameTypeDescription
newAgentaddressThe address of the new accounting agent.

removeAccountingAgent

Removes an accounting agent.

function removeAccountingAgent(address agent) external;

Parameters

NameTypeDescription
agentaddressThe address of the accounting agent to remove.

Events

AccountingAgentAdded

event AccountingAgentAdded(address indexed newAgent);

AccountingAgentRemoved

event AccountingAgentRemoved(address indexed agent);

MechanicChanged

event MechanicChanged(address indexed oldMechanic, address indexed newMechanic);

RecoveryModeChanged

event RecoveryModeChanged(bool recoveryMode);

RestrictedAccountingModeChanged

event RestrictedAccountingModeChanged(bool restrictedAccountingMode);

RiskManagerChanged

event RiskManagerChanged(address indexed oldRiskManager, address indexed newRiskManager);

RiskManagerTimelockChanged

event RiskManagerTimelockChanged(address indexed oldRiskManagerTimelock, address indexed newRiskManagerTimelock);

SecurityCouncilChanged

event SecurityCouncilChanged(address indexed oldSecurityCouncil, address indexed newSecurityCouncil);

Structs

MakinaGovernableInitParams

Initialization parameters.

struct MakinaGovernableInitParams {
address initialMechanic;
address initialSecurityCouncil;
address initialRiskManager;
address initialRiskManagerTimelock;
address initialAuthority;
bool initialRestrictedAccountingMode;
}

Properties

NameTypeDescription
initialMechanicaddressThe address of the initial mechanic.
initialSecurityCounciladdressThe address of the initial security council.
initialRiskManageraddressThe address of the initial risk manager.
initialRiskManagerTimelockaddressThe address of the initial risk manager timelock.
initialAuthorityaddressThe address of the initial authority.
initialRestrictedAccountingModeboolThe initial value for the restricted accounting mode.