# Slashing Rules for Validators

### Context

*Tellor inherits validator slashing mechanisms from CometBFT. A detailed understanding can be found in the* [*cosmos SDK documentation*](https://docs.cosmos.network/main/build/modules/slashing)*.*

## Slashing, Jailing, and Tombstoneing

There are two basic reasons that a validator may be automatically slashed, jailed or tombstoned: <mark style="color:yellow;">**liveness**</mark> and <mark style="color:red;">double signing</mark>.

### **Liveness (inactivity):**

If your validator fails to sign for 500 blocks (e.g. the validator node is down for 500 blocks), the validator will be automatically jailed. **At the time of writing tellor has a 1.52s average block time, so it takes approximately 12.6 minutes of inactivity before a validator is jailed.**

The penalty for inactivity is 1% of bonded tokens. Liveness slashes do not lead to a tombstombing.

If your node is Jailed for inactivity, you can simply "**unjail**" it via cli on the host machine:

**Double Signing:**

Unjustified pre-commits (double signs) are rare, and the penalty is severe. If a double sign is detected the validator is automatically slashed up to 50% and tomestoned, while their delegators are forced to unbond or redelegate their token voting power.\
\
A “tombstoned" validator key can never be used again. The validator may rejoin the network using another node key, but they will have to earn back the trust of any delegators they previously had.

{% hint style="danger" %}
Warning: It is possible to double sign blocks accidentally during complex operations like migrating a validator node to a different machine. Always be 100% sure that the layer node process on the old machine is dead before starting it up on the new machine!

Warning: Never use any account that was used on tellor testnet to run a validator on tellor mainnet!
{% endhint %}

## Check Your Validator's Status

You can check your validator's status on the[ block explorer ](https://explorer.tellor.io/validators)or via cli:

```sh
./layerd query staking validator ACCOUNT_NAME
```

"status: 2" means that you are jailed.

## How to Unjail

Unjail your validator with the command:

{% code overflow="wrap" %}

```bash
./layerd tx slashing unjail --from YOUR_ACCOUNT_NAME --chain-id tellor-1 --fees 5loya --yes
```

{% endcode %}


---

# 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.tellor.io/tellor/running-tellor/run-a-layer-validator/jailing-and-unjail-ing.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.
