> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elata.bio/llms.txt
> Use this file to discover all available pages before exploring further.

# Protocol Configuration

> Governance-configurable parameters and their bounds

## Overview

`ProtocolConfig` is the central parameter store for the protocol. All values are bounded and can only be updated through governance (governor + timelock).

***

## App Creation Parameters

| Parameter             | Default  | Bounds         |
| --------------------- | -------- | -------------- |
| `appCreationFeeElta`  | 10 ELTA  | max 1,000 ELTA |
| `appCreationSeedElta` | 100 ELTA | unbounded      |

***

## Bonding Curve Parameters

| Parameter                 | Default     | Bounds                                 |
| ------------------------- | ----------- | -------------------------------------- |
| `bondingCurveTradeTaxBps` | 100 (1%)    | max 500 (5%)                           |
| `graduationTarget`        | 42,000 ELTA | min 1,000 — max 1,000,000 ELTA         |
| `lpLockDuration`          | 730 days    | min 30 days — max 1,825 days (5 years) |
| `activationDelay`         | 1 hour      | 0 — 24 hours                           |
| `maxCurveDuration`        | 30 days     | min 7 days — max 90 days               |

***

## Transfer Tax Parameters

| Parameter              | Default  | Bounds                     |
| ---------------------- | -------- | -------------------------- |
| `appTransferTaxBps`    | 100 (1%) | max `maxAppTransferTaxBps` |
| `maxAppTransferTaxBps` | 500 (5%) | max 1,000 (10%)            |

***

## Fee Split Parameters

These must sum to 10,000 bps. Each bucket is capped at 9,000 bps.

| Bucket          | Default     | Max   |
| --------------- | ----------- | ----- |
| `appStakersBps` | 7,000 (70%) | 9,000 |
| `veEltaBps`     | 1,500 (15%) | 9,000 |
| `creatorBps`    | 500 (5%)    | 9,000 |
| `treasuryBps`   | 1,000 (10%) | 9,000 |
| `referralBps`   | 0 (0%)      | 9,000 |

<Note>
  These ProtocolConfig splits are used by the FeeManager epoch settlement path. The FeeSwapper uses a simpler 80/20 contributor/treasury split. See [Fee Pipeline](/apps/design/fee-flow) for details on which path is active.
</Note>

***

## Settlement Parameters

| Parameter          | Default  | Bounds                  |
| ------------------ | -------- | ----------------------- |
| `epochLength`      | 1 day    | min 1 hour — max 7 days |
| `maxSlippageBps`   | 500 (5%) | max 1,000 (10%)         |
| `minSwapThreshold` | 1 ELTA   | max 1,000 ELTA          |

***

## Sniper Fee Parameters

Set per bonding curve at launch:

| Parameter           | Default  | Bounds          |
| ------------------- | -------- | --------------- |
| `sniperFeeBps`      | 500 (5%) | max 1,000 (10%) |
| `sniperFeeDuration` | 1 hour   | —               |

The sniper fee adds on top of the base trading fee during the sniper window after curve activation.

***

## Governance Parameters

From `ElataGovernor` and `ElataTimelock`:

| Parameter                    | Value                        |
| ---------------------------- | ---------------------------- |
| Voting delay                 | 1 day                        |
| Voting period                | 7 days                       |
| Proposal threshold           | 77,000 ELTA (0.1% of supply) |
| Quorum                       | 4% of total supply           |
| Standard timelock delay      | 48 hours                     |
| Emergency proposal threshold | 5% of total supply           |
| Emergency voting period      | 3 days                       |
| Emergency timelock delay     | 6 hours                      |

***

## Vesting Defaults

Set at app launch via `AppFactory`:

| Parameter        | Default            |
| ---------------- | ------------------ |
| Vesting cliff    | 90 days            |
| Vesting duration | 730 days (2 years) |
| Vesting schedule | Linear after cliff |
