Skip to content

Latest commit

 

History

History
234 lines (173 loc) · 4.22 KB

File metadata and controls

234 lines (173 loc) · 4.22 KB

Tokenomics

Overview

TNT (Tetcore Network Token) is the native protocol-level token. It exists at the protocol layer, not as a smart contract.

Token Specifications

Property Value
Name Tetcore Network Token
Symbol TNT
Decimals 18
Total Supply 100,000,000,000 (100B)
Standard Native protocol asset

Genesis Supply

  • Fixed at genesis: 100 billion TNT
  • Created exactly once at block 0
  • No additional minting unless authorized by governance

Genesis Allocation

Genesis balances are defined in GenesisConfig and must sum exactly to TOTAL_SUPPLY.

Decimal Representation

1 TNT = 10^18 base units

All balances are stored as u128 (base units).

Supply Invariants

At all times:

Σ balances + Σ escrow + Σ vault_staked + Σ locked = TOTAL_SUPPLY - burned

Transfer Rules

Transaction Format

TransferPayload = {
  to: Address,
  amount: u128
}

Validation

  • amount > 0
  • sender_balance >= amount
  • to != null_address

State Mutation

balance[sender] -= amount
balance[to] += amount

Gas fees are deducted separately.

Economic Uses

1. Inference Payment

  • Clients pay operators for AI inference
  • Escrow secures payment until receipt submitted

2. Gas Payment

  • Transaction fees for execution
  • May be routed to validators or burned

3. Staking

  • Lock TNT in Model Vaults
  • Earn rewards from inference fees

4. Governance

  • Voting power proportional to balance
  • Proposal bonds required

5. Validator Rewards

  • Block production incentives
  • Consensus participation rewards

Burn Mechanism (Optional)

If enabled by governance:

  • Burn amount reduces total supply
  • total_burned tracked in state
  • current_supply = TOTAL_SUPPLY - total_burned

Minting Rules

Default: No minting after genesis

If governance enables inflation:

  • Must define cap and rate
  • Must be deterministic
  • Must preserve accounting invariants

Fee Model

Gas Fees

fee = gas_used * gas_price

Gas prices are market-driven.

Revenue Routing

Inference fees are split per RevenueSplit:

Recipient Default Basis Points
Operator 7000
Model Owner 2000
Shard Provider 500
Validator 400
Treasury 100

Vault Economics

Stake Amounts

Users stake TNT to:

  • Support model inference capacity
  • Earn proportional rewards
  • Participate in governance (with vault)

Reward Distribution

reward = inference_fees * vault_share * staker_percentage

Query Functions

The protocol exposes:

  • QueryTotalSupply()
  • QueryBurnedSupply()
  • QueryEscrowedSupply()
  • QueryVaultStakedSupply()

Implementation

TokenSupply

pub struct TokenSupply {
    pub total: u128,
    pub circulating: u128,
    pub escrowed: u128,
    pub vault_staked: u128,
    pub burned: u128,
    pub locked_collateral: u128,
    pub treasury_balance: u128,
    pub validator_rewards: u128,
}

InflationConfig

pub struct InflationConfig {
    pub state: InflationState,
    pub rate_bps: u64,
    pub cap: u128,
    pub start_block: u64,
    pub end_block: u64,
    pub treasury_share_bps: u64,
    pub validator_share_bps: u64,
}

pub enum InflationState {
    Disabled,
    Enabled,
    Paused,
}

StakingModule

pub struct StakingModule {
    pub total_staked: u128,
    pub total_shares: u128,
    pub stakers: HashMap<Address, StakerInfo>,
    pub validators: HashMap<Address, ValidatorStake>,
    pub inflation_config: InflationConfig,
    pub token_supply: TokenSupply,
}

Treasury

pub struct Treasury {
    pub balance: u128,
    pub spent: u128,
    pub proposal_count: u64,
    pub spend_limit_per_proposal: u128,
}

FeeModule

pub struct FeeModule {
    pub base_fee: u128,
    pub min_gas_price: u128,
    pub max_gas_price: u128,
    pub burn_percentage: u8,
    pub treasury_share: u8,
    pub validator_share: u8,
    pub congestion_multiplier: u128,
    pub target_utilization: u64,
}

Determinism Requirements

All token economics must use:

  • Integer arithmetic only (no floating point)
  • Checked overflow behavior
  • Canonical ordering for distributions
  • Identical state roots across nodes