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.
Whenever an internal task is executed, a proof of task is generated. The generated proof, along with task execution data, is broadcasted internally to the P2P network. Attesters validate the execution by verifying the proof and recalculating expected outcomes.
Internal tasks are executed by Aggregator nodes when the --internal-tasks
option is enabled.
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.
Use the --sync-interval <syncInterval in milliseconds>
flag to configure synchronization intervals. For example, --sync-interval 5400000
sets the interval to 1 hour and 30 minutes (equivalent to 5,400,000 milliseconds).
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.