Internal Tasks
Last updated
Last updated
Internal Tasks are consensus-based modules for ongoing maintenance of the AVS network. Each module is purpose-built for a specific function and is carried out by the AVS Operators.
Each internal task is uniquely identified and configured with a specific task definition ID.
These tasks are scheduled based on a specified frequency, which can vary depending on the operational requirements.
The execution and validation of internal tasks are facilitated by the same operator set and consensus engine used by the AVS, ensuring that they adhere to the same consensus standards as core AVS Tasks.
The Operator's voting power is proportional to the amount of (re)stake assets locked to secure the AVS, and determine the influence of individual Operators over the consensus process. The module factors the fluctuations in the value of the underlying assets and adjustments to an Operator's stake
VotingPowerSyncTask
for synchronizing voting power updates is registered as an internal task with the Task definition ID 10001
.
VotingPowerPerTaskDefinitionSyncTask
for synchronizing voting power per task definition is registered as an internal tasks with Task definition ID 10002
.
To verify that the internal tasks are running as expected, check your Attestation Center submitTask transactions for these tasks.
You can configure how frequently internal tasks are run by setting the INTERNAL_TASKS
environment variable. It accepts a JSON array of task objects, where each task has:
name
: The name of the voting power sync tasks. Valid values are VOTING_POWER_SYNC
and VOTING_POWER_PER_TASK_DEFINITION_SYNC
interval
: Execution interval in milliseconds
Example:
Default interval: 3600000
ms (1 hour)
Minimum allowed interval: 60000
ms (1 minute)
Voting Power Calculation and Syncing Logic
The Voting Power Calculator is responsible for calculating the voting power of operators across Layer 1 (L1) and Layer 2 (L2) blockchains. The task logic contains fetching the voting power from both chains, computing the difference, identifying operators whose voting power has either increased or decreased.
Periodic scheduling of the voting power synchronization process.
Validation of proposed voting power updates against recalculated values.
Broadcasting results through the P2P framework.
The task logs important events, including scheduling, execution, and validation results, to facilitate debugging and monitoring.
Errors encountered during execution are logged using the Logger
service.
Validation errors are handled by comparing calculated and proposed values.
Whenever an internal task is executed, a proof of task is generated. The generated proof, along with task execution data, is broadcast internally to the P2P network. validate the execution by verifying the proof and recalculating expected outcomes.
Internal tasks are executed by nodes when the --internal-tasks
option is enabled.