Ownership and Roles

You control your personal contract. Other protocol contracts use roles assigned to DAO multisigs composed of the core team, partner protocols, and security firms.

Although you - and only you - are the Owner of your CryptoLegacy personal contract, there are other contracts within the protocol.

We use a flexible yet reliable role-based approach to manage these contracts. Various DAO multisigs include signers from the Core team, Protocol partners, and Top Security Firms.

Role names are simplified as:

  • Msig 1.

  • Msig 2.

  • Msig 3.

Detailed information about their associated multisig wallets can be found in separate articles.

The table below lists the contracts, their functions, and the roles assigned to each. Every function is protected by a personal timelock for execution.

Contract
Function
Purpose
Role
Timelock

BuildManagerOwnable

setBuildManager()

Adds or removes a build manager address. Only the owner can call.

Msig 3

5 days

CryptoLegacyBuildManager

setRegistries()

Sets references to the fee registry, plugins registry, and beneficiary registry.

Msig 3

5 days

CryptoLegacyBuildManager

setFactory()

Sets the factory contract.

Msig 3

5 days

CryptoLegacyBuildManager

setSupplyLimit()

Sets the supply limit for lifetime NFTs, after which multiple mints without a lock become possible.

Msig 2

5 days

CryptoLegacyBuildManager

setExternalLens()

Sets the external lens contract address.

Msig 2

5 days

CryptoLegacyBuildManager

withdrawFee()

Withdraws fee from the contract to a recipient.

Msig 2

5 days

CryptoLegacyFactory

setBuildOperator()

Adds or removes an allowed operator to build CryptoLegacy contracts.

Msig 3

5 days

FeeRegistry

setCodeOperator()

Sets a operator address, that can manage referral codes.

Msig 2

5 days

FeeRegistry

setSupportedRefCodeInChains()

Adds or removes supported chain IDs for referral codes.

Msig 2

5 days

FeeRegistry

setFeeBeneficiaries()

Sets the custom fee beneficiaries for the registry.

Msig 2

5 days

FeeRegistry

setDefaultPct()

Sets the default discount and share percentages.

Msig 2

5 days

FeeRegistry

setRefererSpecificPct()

Sets referral-specific discount and share percentages.

Msig 2

0 days

FeeRegistry

setContractCaseFee()

Sets the fee for a particular contract case.

Msig 2

5 days

LifetimeNft

setBaseUri()

Sets a new base URI for the tokens.

Msig 2

0 days

LifetimeNft

setMinterOperator()

Grants or revokes permission to mint new tokens.

Msig 3

5 days

LockChainGate

setDebridgeGate()

Sets the deBridgeGate contract.

Msig 3

5 days

LockChainGate

setDebridgeNativeFee()

Sets the native fee for a specific chain.

Msig 2

5 days

LockChainGate

setDestinationChainContract()

Sets the destination chain contract.

Msig 2

5 days

LockChainGate

setSourceChainContract()

Sets the source chain contract.

Msig 2

5 days

LockChainGate

setSourceAndDestinationChainContract()

Sets both the source and destination chain contracts to the same address.

Msig 2

5 days

LockChainGate

setLockPeriod()

Sets the NFT lock period.

Msig 2

5 days

LockChainGate

setReferralCode()

Sets the referral code for deBridge.

Msig 2

0 days

LockChainGate

setCustomChainId()

Sets a custom chain ID.

Msig 2

5 days

PluginsRegistry

addPlugin()

Registers a plugin and logs a description block number.

Msig 3

5 days

PluginsRegistry

addPluginDescription()

Adds a new descriptive note for an already-registered plugin.

Msig 3

5 days

PluginsRegistry

removePlugin()

Deregisters a plugin.

Msig 3

5 days

SignatureRoleTimelock

setMaxExecutionPeriod()

Sets the maximum allowable execution period for scheduled calls.

Msig 1.

0 days

SignatureRoleTimelock

setRoleAccounts()

Manages role-account associations by adding, removing, or updating accounts for specified roles.

Msig 1.

0 days

SignatureRoleTimelock

cancelCallList()

Cancels scheduled contract calls.

Msig 1.

0 days

Last updated