# Reward Mining Algorithm – Quality Messaging Incentives

To preserve token value, prevent abuse, and encourage meaningful engagement, Sudo implements a **Proof-of-Message (PoM) Mining System**. This algorithmic, non-inflationary reward engine is designed to **incentivize high-quality user interactions** while filtering out spam and bot activity through strict scoring rules and anti-abuse mechanisms.

#### 1. Proof-of-Message (PoM) Mining Logic

Every time a verified Sudo user sends a message that is successfully delivered, it is evaluated for reward eligibility using weighted scoring factors:

<table data-header-hidden><thead><tr><th width="149"></th><th width="120"></th><th></th></tr></thead><tbody><tr><td><strong>Factor</strong></td><td><strong>Weightage</strong></td><td><strong>Description</strong></td></tr><tr><td>Word Count</td><td>Medium</td><td>Messages between 5–25 words earn maximum points; very short or excessively long spammy messages score lower.</td></tr><tr><td>Engagement</td><td>High</td><td>Messages that are replied to, quoted, or forwarded receive additional reward multipliers.</td></tr><tr><td>Context Type</td><td>Medium</td><td>Group messages receive higher weighting than DMs; channel posts have the highest impact multiplier.</td></tr><tr><td>Session Density</td><td>Low</td><td>Rapid-fire message sending reduces rewards through a diminishing return mechanism.</td></tr><tr><td>Spam Detection</td><td>Critical</td><td>Messages exhibiting bot-like patterns or low content quality are excluded from rewards.</td></tr></tbody></table>

This model prioritizes quality over quantity, ensuring that genuine conversations drive rewards rather than spam volume.

#### 2. Reward Calculation Formula

The PoM reward for each eligible message is determined by:

**R = (B × W × E × C × D) − P**

Where:

* R = Final reward score per message.
* B = Base reward rate (in SUDO) assigned per message type.
* W = Word count factor (0.2 to 1.0).
* E = Engagement multiplier (0.5 to 2.0) based on replies, quotes, and forwards.
* C = Context multiplier (DM = 1.0, Group = 1.2, Channel = 1.5).
* D = Time density factor (0.5 to 1.0), reducing rewards for high-frequency bursts.
* P = Penalty score, applied if spam indicators are detected.

This formula ensures rewards scale based on message quality, engagement value, and contextual impact.

#### 3. Reward Limits by User Tier

To maintain fairness and prevent reward farming, users are segmented into tiers with daily caps:

| **Tier**      | **Max Daily Messages** | **Max Daily Reward (SUDO)** |
| ------------- | ---------------------- | --------------------------- |
| Free Users    | 200                    | 50                          |
| Power Users   | 500                    | 150                         |
| Verified Bots | 1000                   | 200                         |

Rewards are drawn from the pre-allocated mining pool of 40 million SUDO tokens. Once the pool depletes, the reward-per-message value will gradually decline to ensure sustainability.

#### 4. Anti-Abuse Mechanisms

The PoM system employs multiple protective measures to ensure rewards benefit genuine users:

* Wallet Reputation Scoring: On-chain and in-app behavior builds a trust score that impacts reward eligibility.
* AI Content Scoring: Messages are analyzed for quality, originality, and coherence, filtering out gibberish or repetitive spam.
* Web3 Signature Verification: All senders must be verified through cryptographic signatures; optional KYW (Know Your Wallet) verification adds an additional trust layer.
* Automated Blacklisting: Repeat offenders or detected bot accounts are permanently excluded from rewards.

#### 5. Economic Goal

The primary objective of the PoM mining model is:

*Reward messaging as a value-generating behavior without flooding the economy with free tokens.*

By applying dynamic scoring, reward caps, and token burn-backed funding, the system ensures that genuine, high-quality conversations are consistently rewarded, while spam and manipulation are algorithmically and economically disincentivized.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sudochat.app/sudo-whitepaper/overview/publish-your-docs-2.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
