BPoW Technical Spec Consensus + Economics + Operations

BPoW Documentation Pack (Deep Dive)

This page is the concentrated BPoW reference: why Atho uses Bonded Proof of Work, how miner bond/stake state machines are enforced, what gets slashed, how fees are routed, and how each constant maps to consensus behavior. Content is derived from current source docs: Consensus.md, WhitePaper.md, Emissions.md, and Atho_Final_Specs.md.

BPoW At A Glance

  • Enforcement Height 10,000 (mainnet/testnet/regnet default).
  • Bond Requirement 25 ATHO with 25 confirmations before active mining eligibility.
  • Unbond + Slash 10,080-block unbond delay; slash penalty 2.5 ATHO.
  • Fee Routing 40% pool pre-tail and 55% pool post-tail, with tail-era burn targeting on the 45% non-pool path and unchanged routing after subsidy clipping at cap.

Why BPoW Is Structured This Way

Atho separates security roles to avoid blending validator authority with passive capital participation:

  • Mining security rolePoW + active bond state controls block production.
  • Wallet staking roleEconomic participation lane that does not independently grant block-authoring rights.
  • Deterministic role separationAddress derivation uses domain-separated hashes so one key cannot ambiguously act as multiple consensus roles.
  • Launch stability runwayBootstrap allocation at block 1 and enforcement activation at height 10,000 provide deterministic onboarding before strict bond-gated production.

Design Objectives

  • Auditable economicsEvery fee path and pool split is deterministic and visible at block level.
  • Consensus-safe slashingSlashable only when PoW-valid but consensus-invalid; stale/reorg race losses are non-slashable.
  • Supply floor safetyTail burn logic cannot reduce effective circulating supply below 21,000,000 ATHO.
  • Backend neutralityCPU/GPU miner engines are execution backends only; consensus validity remains engine-independent.
Consensus Constants

BPoW constants, thresholds, and economic routing values.

BPoW enforcement height     = 10,000
Bond requirement            = 25 ATHO
Bond activation confs       = 25 blocks
Unbond delay                = 10,080 blocks
Slash penalty               = 2.5 ATHO
Epoch length                = 720 blocks
Finalization buffer         = 3600 blocks
Bootstrap allocation        = 781,250 ATHO at block 1
Pre-tail base target        = 400,000,000 ATHO total
Hard max supply             = 500,000,000 ATHO (subsidy clipped at cap)

Fee uplift                  = +25%
Fee routing to pool         = 40% pre-tail / 55% post-tail
Routed non-pool path        = 60% pre-tail / 45% post-tail
Pool split (pre-tail)       = 20% miner-side / 20% stake-side
Pool split (post-tail)      = 25% miner-side / 30% stake-side
Miner-side split (pre-tail) = 0% winner / 20% bonded-idle
Miner-side split (post-tail)= 20% winner / 5% bonded-idle
Tail burn target            = 100% burn on routed non-pool fees
Supply floor                = 21,000,000 ATHO (floor clipping enforced)
Post-cap subsidy            = 0 ATHO (fee routing still active)

Deterministic Role Address Derivation

Role addresses are derived from Falcon public key bytes with domain separation:

regular = SHA3-384("ATHO_ADDR_V1"  || network || pubkey)
bond    = SHA3-384("ATHO_BOND_V1"  || network || pubkey)
stake   = SHA3-384("ATHO_STAKE_V1" || network || pubkey)

Prefixes are network-role specific (A/B/S on mainnet; T/D/E on testnet/regnet), but consensus validates derivation rules, not string prefix alone.

Bond + Stake State Machines

Bond:  pending -> active -> exiting -> unlockable -> withdrawn
Stake: pending -> active -> exiting -> unlockable -> withdrawn

Both state machines are enforced by deterministic block height + confirmation checks. No transition is accepted if preconditions fail.

  • Bond top-up behaviorIf slash reduces bond below threshold, additional bond deposit + confirmations restore eligibility.
  • Unbond safety window10,080 block delay reduces fast-exit attack surface and stabilizes accountability windows.

Block-Level Miner Proof Requirements

  • Required metadata fieldsminer_pubkey, reward_address, miner_signature, and role tag bonded_pow_v1.
  • Consensus validationParent linkage, PoW target, merkle/witness commitments, byte/weight limits, tx validity, coinbase invariants, and active bond eligibility.
  • Data stores usedbond.lmdb, stake.lmdb, and utxo.lmdb feed consensus admission and payout logic.

Slashable vs Non-Slashable Matrix

Slashable: PoW-valid block that is consensus-invalid (invalid miner signature, invalid bond eligibility, invalid tx validity/structure, payout invariants broken).

Not slashable: stale/orphan valid block from honest race, reorged-out valid block, or late but otherwise valid relay.

This distinction is deterministic and specifically designed to avoid punishing honest propagation races.

Fee Routing + Burn Math

if height < 17_000_000:  # pre-tail
  pool_share      = total_fees * 0.40
  routed_non_pool = total_fees * 0.60
  pool_miner_side = total_fees * 0.20
  pool_stake_side = total_fees * 0.20
  miner_winner    = total_fees * 0.00
  miner_bond_idle = total_fees * 0.20
else:  # post-tail
  pool_share      = total_fees * 0.55
  routed_non_pool = total_fees * 0.45
  pool_miner_side = total_fees * 0.25
  pool_stake_side = total_fees * 0.30
  miner_winner    = total_fees * 0.20
  miner_bond_idle = total_fees * 0.05

stake_weight_i   = active_stake_i / total_active_stake_epoch
stake_reward_i   = stake_pool_epoch * stake_weight_i

post_tail_target = burn(100% of routed_non_pool)
subject_to       = supply_floor_clipping(21,000,000 ATHO)

Tail-era burn is clipped by burn headroom so protocol accounting cannot cross the effective circulating floor.

Stake rewards are weighted by active stake share inside each settlement window, so payout is proportional to each wallet's percentage of the active stake pool.

Coinbase + Monetary Invariants

  • Atom-level accountingAll value math is integer atoms only; display units are presentation-only.
  • Coinbase invariantcoinbase_outputs_sum_atoms == block_reward_atoms + fees_miner_atoms.
  • Auditable fee fieldsfees_total_atoms, fees_miner_atoms, fees_burned_atoms, fees_pool_atoms, cumulative_burned_atoms.
Download Pack

BPoW source references and deep technical downloads.

Consensus Spec

Active constants, BPoW state transitions, slashing rules, fee routing, and invariants.