LogoLogo
  • Introduction
    • Introducing Othentic Stack
    • Use Cases
  • AVS Framework
    • Abstract
    • Quick Start
    • Othentic CLI
      • Key Management
      • Contracts Deployment
      • Operator Registration
      • AVS Logic Implementation
      • Operator Deposit
      • Node Operators
      • Rewards Distribution
      • P2P Config
        • Custom P2P Messaging
        • P2P Auth Layer
        • Metrics and Monitoring
        • Logging
        • Persistent storage
        • Latency
      • CLI Command Reference
    • Smart Contracts
      • AVS Governance
      • Attestation Center
      • Hooks
        • Task Logic
        • Operator Management
        • Rewards Fee Calculator
      • OBLS
      • Internal Task Handler
      • Othentic Registry
      • Message Handlers
    • Othentic Consensus
      • Abstract
      • Task & Task Definitions
      • Leader Election
      • Proof of Task
      • Execution Service
      • Validation Service
      • Voting Power
      • Rewards
      • Internal Tasks
      • Slashing & Ejection
        • Slashing Modules
        • Custom Slashing
    • FAQ
    • Supported Networks
    • Explainers
      • Networking
      • Multichain
      • Production Guidelines
      • Operator Allowlisting
      • Governance Multisig
  • External
    • AVS Examples
  • GitHub
  • Othentic Hub
Powered by GitBook
On this page
  • Overview
  • Core Functions
  • Task Handlers
  1. AVS Framework
  2. Smart Contracts

Internal Task Handler

PreviousOBLSNextOthentic Registry

Last updated 15 days ago

Overview

The InternalTaskHandler contract on L2 is one of the core component of the Othentic AVS framework handling . It is responsible for processing and executing system-level tasks that are delegated by the AttestationCenter.

These tasks include:

  • Internal administrative transactions


Core Functions

getLastCommitBlockL1

function getLastCommitBlockL1() external view returns (uint256);

Returns the block number of the last committed update from L1.

getLastCommitBlockL2

function getLastCommitBlockL2() external view returns (uint256);

Returns the block number of the last committed update from L2.

attestationCenter

function attestationCenter() external view returns (IAttestationCenter);

Returns the address of the current AttestationCenter contract.

processTask

function processTask(IAttestationCenter.TaskInfo calldata _task) external;
  • Internal Transactions Execution 10002

  • Weights Update 10003

Access is restricted to the ATTESTATION_CENTER role.


Task Handlers

votingPowerUpdate

function _votingPowerUpdate(IAttestationCenter.TaskInfo memory _task) internal;

Handles voting power sync tasks. Decodes a VotingPowerUpdate struct and updates voting power for Operators using the OBLS contract. It also includes checks against duplicate or future block submissions.

weightsUpdate

function _weightsUpdate(IAttestationCenter.TaskInfo memory _task) internal;

Handles weight update tasks. Decodes an array of WeightUpdate structs and emits a message via the MessageHandler contract for cross-chain propagation.

This task normalizes validator weights according to external factors like token prices or other economic metrics.

triggerInternalTransactionsTask

function _triggerInternalTransactionsTask(IAttestationCenter.TaskInfo memory _task) private;

Processes internal OBLS-specific administrative transactions to update voting power per task for restricted operators. This is restricted only to certain method selectors on the OBLS contract.

Processes a task from the AttestationCenter. Based on the , the appropriate internal function is triggered:

10001

Internal Tasks
taskDefinitionId
Voting power synchronization
Weight updates
Voting Power Sync