AgentRegistryCore
AgentRegistryCore
_stakeThreshold
frontRunningDelay
AgentCommitted
AgentUpdated
StakeThresholdChanged
FrontRunningDelaySet
onlyOwnerOf
Checks sender (or metatx signer) is owner of the agent token.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent. |
onlySorted
Checks if array of uint256 is sorted from lower (index 0) to higher (array.length -1)
Name | Type | Description |
---|---|---|
array | uint256[] | to check |
prepareAgent
Save commit representing an agent to prevent frontrunning of their creation
Name | Type | Description |
---|---|---|
commit | bytes32 | keccak256 hash of the agent creation's parameters |
createAgent
Agent creation method. Mints an ERC721 token with the agent id for the owner and stores metadata.
fires _before and _after hooks within the inheritance tree. If front run protection is enabled (disabled by default), it will check if the keccak256 hash of the parameters has been committed in prepareAgent(bytes32).
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent to be created. |
owner | address | address to have ownership privileges in the agent methods. |
metadata | string | IPFS pointer to agent's metadata JSON. |
chainIds | uint256[] | ordered list of chainIds where the agent wants to run. |
isRegistered
Checks if the agentId has been minted.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent. |
Name | Type | Description |
---|---|---|
[0] | bool | true if agentId exists, false otherwise. |
updateAgent
Updates parameters of an agentId (metadata, image, chain IDs...) if called by the agent owner.
fires _before and _after hooks within the inheritance tree.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent to be updated. |
metadata | string | IPFS pointer to agent's metadata JSON. |
chainIds | uint256[] | ordered list of chainIds where the agent wants to run. |
setStakeThreshold
StakeThreshold setter, common to all Agents. Restricted to AGENT_ADMIN_ROLE, emits StakeThresholdChanged
getStakeThreshold
stake threshold common for all agents
_isStakedOverMin
Checks if agent is staked over minimum stake
Name | Type | Description |
---|---|---|
subject | uint256 | agentId |
Name | Type | Description |
---|---|---|
[0] | bool | true if agent is staked over the minimum threshold and is, or staking is not yet enabled (stakeController = 0). false otherwise |
setFrontRunningDelay
allows AGENT_ADMIN_ROLE to activate frontrunning protection for agents
Name | Type | Description |
---|---|---|
delay | uint256 | in seconds |
_beforeAgentUpdate
function _beforeAgentUpdate(uint256 agentId, string newMetadata, uint256[] newChainIds) internal virtual
hook fired before agent creation or update.
does nothing in this contract.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent to be created or updated. |
newMetadata | string | IPFS pointer to agent's metadata JSON. |
newChainIds | uint256[] | ordered list of chainIds where the agent wants to run. |
_agentUpdate
logic for agent update.
emits AgentUpdated, will be extended by child contracts.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent to be created or updated. |
newMetadata | string | IPFS pointer to agent's metadata JSON. |
newChainIds | uint256[] | ordered list of chainIds where the agent wants to run. |
_afterAgentUpdate
function _afterAgentUpdate(uint256 agentId, string newMetadata, uint256[] newChainIds) internal virtual
hook fired after agent creation or update.
emits Router hook.
Name | Type | Description |
---|---|---|
agentId | uint256 | ERC721 token id of the agent to be created or updated. |
newMetadata | string | IPFS pointer to agent's metadata JSON. |
newChainIds | uint256[] | ordered list of chainIds where the agent wants to run. |
_msgSender
Obligatory inheritance dismambiguation of ForwardedContext's _msgSender()
Name | Type | Description |
---|---|---|
sender | address | msg.sender if not a meta transaction, signer of forwarder metatx if it is. |
_msgData
Obligatory inheritance dismambiguation of ForwardedContext's _msgSender()
Name | Type | Description |
---|---|---|
[0] | bytes | sender msg.data if not a meta transaction, forwarder data in metatx if it is. |