Skip to content

SC-030 — Implement Slashing, Penalties & Economic Enforcement Framework #310

Description

@dDevAhmed

SC-030 — Implement Slashing, Penalties & Economic Enforcement Framework

📚 Overview

TruthBounty relies on economic incentives to encourage truthful participation, but incentives alone are insufficient. The protocol must also impose deterministic, transparent, and proportional penalties for malicious or negligent behaviour.

This issue implements the Slashing, Penalties & Economic Enforcement Framework, enabling the protocol to penalise dishonest verifiers, malicious claim creators, governance abusers, and other actors whose actions violate protocol rules.

The framework establishes the economic enforcement layer that complements the reward system and preserves long-term protocol integrity.


🧠 Background

Without meaningful penalties:

  • malicious actors can repeatedly attack the protocol
  • Sybil attacks become economically viable
  • fake verifications become profitable
  • governance manipulation becomes inexpensive
  • protocol trust deteriorates

Economic enforcement ensures that dishonest behaviour carries measurable financial consequences while protecting honest participants.


🎯 Objectives

Implement an enforcement framework that:

  • supports configurable slashing
  • penalises malicious behaviour
  • protects honest participants
  • integrates with treasury accounting
  • supports governance-controlled penalties
  • preserves protocol fairness

🧩 Technical Scope

1. Slashing Engine

Implement a dedicated Slashing Engine responsible for:

  • calculating penalties
  • executing stake slashing
  • recording enforcement actions
  • notifying dependent modules
  • exposing penalty history

The engine should become the canonical enforcement mechanism across the protocol.


2. Slashable Offences

Support penalties for:

Verification Misconduct

  • fraudulent verification
  • repeated inaccurate verification
  • collusion
  • double participation
  • spam verification

Claim Misconduct

  • fraudulent claims
  • repeated malicious claims
  • protocol abuse

Governance Misconduct

  • governance spam
  • malicious proposal abuse
  • protocol attack attempts

Operational Violations

  • protocol manipulation
  • replay attempts
  • abuse of emergency controls

Governance should be able to extend offence definitions.


3. Penalty Types

Support:

  • partial stake slashing
  • full stake slashing
  • reputation reduction
  • temporary suspension
  • permanent ban (governance controlled)
  • reward forfeiture

Penalty combinations should be configurable.


4. Penalty Calculation

Penalty calculations may consider:

  • offence severity
  • verifier reputation
  • stake size
  • offence history
  • governance configuration
  • protocol impact

Penalty calculations must remain deterministic.


5. Treasury Integration

Slashed assets should be routed according to governance-defined policy.

Example:

Slashed Stake

↓

Treasury Reserve

↓

Security Fund

↓

Protocol Insurance

↓

Burn Address (optional)

Routing must be auditable.


6. Reputation Integration

Slashing should automatically affect:

  • verifier reputation
  • participation eligibility
  • governance voting weight
  • future reward multipliers

7. Governance Controls

Governance should configure:

  • penalty percentages
  • offence definitions
  • suspension duration
  • appeal windows
  • treasury allocation

All updates should preserve protocol invariants.


8. Events

Emit:

event StakeSlashed(
    address participant,
    uint256 amount,
    bytes32 offence
);

event ReputationPenalized(
    address participant,
    uint256 previousScore,
    uint256 newScore
);

event PenaltyExecuted(
    bytes32 penaltyId
);

9. Read Interfaces

Expose:

  • offence history
  • penalty records
  • suspension status
  • slashing statistics
  • governance policy
  • treasury allocation

Support efficient indexing.


10. Appeals (Future Ready)

Design interfaces supporting future:

  • governance appeals
  • evidence review
  • community arbitration
  • penalty reversal

Implementation of appeals is outside the scope of this issue.


🏗 Architectural Considerations

The Slashing Engine should remain independent of:

  • Reward Engine
  • Treasury
  • Reputation

Those systems should subscribe to enforcement outcomes rather than embedding slashing logic.


🔐 Security Considerations

Protect against:

  • arbitrary slashing
  • governance abuse
  • duplicate penalties
  • integer overflow
  • replay attacks
  • malicious penalty execution

Only authorised protocol components should initiate enforcement.


⚡ Performance Considerations

Optimise:

  • penalty calculations
  • stake updates
  • reputation updates
  • treasury transfers

Penalty execution should remain efficient under high protocol activity.


🧪 Testing Requirements

Unit Tests

Verify:

  • penalty calculation
  • stake slashing
  • reputation reduction
  • governance updates
  • event emission

Integration Tests

Verify compatibility with:

  • Staking Engine
  • Treasury
  • Reputation Engine
  • Reward Engine
  • Governance

Security Tests

Verify:

  • unauthorised slashing rejected
  • duplicate penalties prevented
  • governance constraints enforced

Invariant Tests

Verify:

  • total slashed assets reconcile with treasury
  • penalties remain deterministic
  • reputation updates remain consistent

Fuzz Tests

Randomise:

  • stake amounts
  • offence severity
  • governance settings
  • participant counts

Verify deterministic behaviour.


Gas Tests

Benchmark:

  • slashing execution
  • treasury routing
  • reputation updates

Document gas costs.


✅ Acceptance Criteria

  • Slashing Engine implemented.
  • Configurable offences supported.
  • Penalty calculation completed.
  • Treasury integration completed.
  • Reputation integration completed.
  • Governance controls implemented.
  • Events emitted correctly.
  • Read interfaces available.
  • Documentation completed.
  • Unit tests completed.
  • Integration tests completed.
  • Invariant tests pass.
  • Fuzz tests pass.
  • Gas benchmarks documented.
  • CI passes successfully.

📖 References

  • TruthBounty Protocol V2 Specification
  • Verifier Staking Framework
  • Reputation Oracle Framework
  • Treasury Accounting Framework
  • Tokenomics & Incentive Distribution Framework

⛓ Dependencies

Depends On

  • SC-014 — Verifier Staking Engine
  • SC-018 — Reputation Oracle Framework
  • SC-027 — Tokenomics & Incentive Distribution Framework
  • SC-029 — Dynamic Reward Calculation & Reputation Multiplier Engine

Blocks

  • Economic Security
  • Reputation Enforcement
  • Anti-Sybil Protection
  • Governance Enforcement
  • Treasury Sustainability

🏷 Labels

contracts

security

economics

reputation-system

governance

protocol-critical

complexity-high

stellar-wave


📊 Complexity

High

This issue introduces the protocol's economic enforcement layer. Together with staking, reputation, and rewards, it forms the incentive structure that makes dishonest behaviour economically irrational while rewarding truthful participation.


⏱ Estimated Effort

5–6 days

Includes:

  • Slashing Engine
  • penalty framework
  • treasury routing
  • reputation integration
  • governance controls
  • testing
  • documentation
  • gas optimisation

🚀 Definition of Done

This issue is complete when:

  • Slashing Engine implemented.
  • Offence catalogue operational.
  • Penalty calculations completed.
  • Treasury routing implemented.
  • Reputation integration completed.
  • Governance controls implemented.
  • Events emitted correctly.
  • Read interfaces available.
  • Documentation completed.
  • Unit tests pass.
  • Integration tests pass.
  • Invariant tests pass.
  • Fuzz tests pass.
  • Gas benchmarks documented.
  • CI passes successfully.
  • Economic enforcement remains deterministic and resistant to manipulation.
  • Pull Request reviewed and approved.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions