Modules
Overview
Othentic Stack introduces Slashing Modules. Each module corresponds to a specific, predefined slashing condition representing common misbehavior in distributed systems. These modules can be configured through the SlashingConfig mechanism, enabled or disabled independently, and are enforced by the Challenger System.
1. Double Attestations
An operator submits multiple attestations for the same task, potentially with conflicting results.
Important Note: When enabled, this module applies to all task definitions in the AVS.


When to use this module?
Use this module when you want to discourage dishonest or lazy Operators from gaming the system by skipping validation logic to save compute costs. Some Operators may attempt to send conflicting attestations (e.g., both true
and false
) to maximize their chances of being included in task consensus and accrue rewards.
Such behavior undermines the Validation process of the network and integrity of the Attester. Enabling this condition ensures that all Attesters reliably run the Validation Service.
2. Rejected Task
This condition is triggered when the task executed by the Performer is rejected by AVS consensus. If this condition is enabled and applicable to the task ID, the Performer of task that is ultimately rejected will be slashed.
Important Note:
Rejected tasks can occur due to improper implementation of Execution or Validation services in the AVS node software.
Governance should only enable this condition after ensuring that both task execution and validation logic are stable, deterministic, and correctly implemented for that specific task.
This module is configured per Task Definition. This allows compartmentalization of Slashing conditions. See setIsRejectedTaskSlashingEnabled function in AttestationCenter for how to enable this module.


When to use this module?
Use this module when you want to prevent Performers spamming with invalid task results or tampering with the outputs for their own benefits. Such behavior can degrade network performance and lead to unnecessary compute usage by Attesters, ultimately reducing the efficiency and reliability of the AVS. Its especially important for high throughput AVSs.
3. Incorrect Attestations
This condition is triggered when an operator submits an attestation that conflicts with the final consensus of the network. This applies whether the task was approved or rejected — the operator’s attestation must match the consensus.
Important Note:
This condition must also be enabled per task definition using setIsIncorrectAttestationSlashingEnabled.
Enabling this condition should only be done after ensuring that both task execution and validation logic are stable, deterministic, and correctly implemented for that specific task.
Once a consensus is finalized for a task, anyone can compare an operator’s attestation to that consensus.
Any registered operator can submit a slashing proof if an operator attests incorrectly.
This challenger is then rewarded from the slashed stake.


When to use this module?
Use this module when you want to enforce strict alignment among the individual attestations and network consensus, especially in AVSs where validation logic is deterministic. It ensures that Operators are not behaving negligently or maliciously by submitting incorrect attestations.
Slashing Module Configuration
Each Slashing Module can be configured independently.
activated A flag indicating whether this slashing condition is currently active.
This allows AVS governance to temporarily turn off certain slashing conditions (e.g., during protocol upgrades, testing new behavior, or in the early stages of rollout).
ejectOperator
Determines whether an operator should be automatically ejected from the network if they violate this slashing condition.
true
: The operator will be slashed and permanently removed (blacklisted) from the AVS upon violation.false
: The operator will only be slashed (i.e., lose a percentage of their stake) but will remain part of the operator set.
stakeSlashedPercentage The percentage of the operator’s stake that will be slashed (deducted) when this condition is triggered.
Slashing affects only the unique stake of the operator, not their total EigenLayer stake unless configured otherwise via AVS registry.
Functions
updateSlashingConfig - create or update the configuration for a specific slashing condition.
getSlashingConfig - get configuration details for a specific slashing condition.
Challenger System
The Challenger System is a mechanism that allows any registered Operator to report misbehavior committed by other operators in the AVS.
The Othentic Stack includes checks for different slashing conditions and automatically triggers penalties when valid proof is submitted.
Challengers are incentivized to participate through monetary rewards, which are paid out from the slashed stake of the misbehaving operator.
Operators can submit proof within 7 days of the misconduct.
Configuration
AVSs need to configure the reward amount that a successful challenger receives when they submit a valid slashing proof. The reward is paid from the slashed stake of the penalized operator.
setChallengerRewardFee - configure challenge rewards fee.
Functions
These slashing functions are designed to be executed by challengers, i.e., any registered Operator who observes verifiable misbehavior by an operator.
slashOperatorForIncorrectAttestation - challenge an operator who submitted an attestation that contradicts the final consensus result for a given task.
slashOperatorForDoubleAttestation - allows any challenger to submit proof that an operator has committed a double attestation —submitting two conflicting attestations for the same task. If valid, the slashing logic defined in the AVS is triggered.
Its required to submit valid, verifiable, and deterministic proofs. The system automatically enforces the configured slashing penalties (percentage-based and/or ejection) for the reported operator.
Last updated