Status & Roadmap

This page is the single source of truth for what is live versus what is built but not activated. If another page disagrees with this one, this page wins — please open an issue.

Last reviewed: 2026-10-16 (mainnet height 261).

RougeChain is post-quantum-secured at the L1 level. The current production XRGE bridge remains on the hardened R1 architecture. A V3 XRGE bridge using ML-DSA-65 post-quantum authorization has been built and rehearsed; it is not deployed and awaits an external audit.

⚠️ Current node release: 1.6.8 (blocks 235, 245 and 260 have passed)

Mainnet activated mintable tokens and contract royalty reads at block 235, the monetary-integrity rule at block 245 (2026-10-05) and AMM_INTEGRITY at block 260 (2026-10-10). Every mainnet node must run release 1.6.7 or later to follow the chain (release 1.6.7). Release 1.6.8 (2026-10-15) fixes a bug that could stop a node producing and importing blocks while processing certain public NFT mints. It is not a consensus change, is recommended for every node, and is what the operator nodes run (release notes). Nodes installed with the one-line installer update themselves. The full schedule is in Upgrade schedule.

Suspended since block 245

The monetary-integrity rule makes a block invalid if it carries one of these transaction types: shield, shielded_transfer, unshield, token_lock, token_unlock, create_staking_pool, token_stake, token_unstake, create_proposal, cast_vote, execute_proposal, delegate, undelegate, token_approve, token_transfer_from. The features behind them — shielded transfers, token locking, token staking pools, on-chain governance and voting, vote delegation — are therefore not available, however an older page or client describes them.

  • Why. Their ledger effects were applied without the state checks they depend on. The V1 shielded pool's proof established value balance only and did not bind a withdrawal to a specific note, and its prover has no zero-knowledge mode, so it did not deliver privacy. The other types were never used on mainnet. The mainnet shielded pool was empty when it was suspended; no funds are affected.
  • What replaces them. A redesigned shielded pool (V2) is specified and in development: a Plonky3-based STARK with a hiding mode (proofs of about 190 KB, verify about 6 ms, prove about 3 s on a phone), launching under a 1,000,000 XRGE pool cap before the external audit. It is not audited, and nothing may claim audited privacy until it is. The other types are being rebuilt with their checks in consensus; no activation height exists. Token allowances are unaffected (approve / transfer_from stay enabled). Treasury decisions for Regenerate use the node-hosted votes in the meantime.

Earlier mandatory node upgrade (block 49)

If you run a RougeChain mainnet node or validator, you must upgrade. On 2026-09-18 mainnet activated a protocol upgrade at block 49 (bridge security hardening and a fix to validator-stake accounting). The upgraded code is on the public repository: rougechain-node main.

A node running a build from before 2026-09-18 may show the correct block height, but it executes blocks with the old rules and ends up with incorrect balances and validator state. There is no partial fix: upgrade and resync. Stake is unaffected — an un-upgraded validator simply is not participating.

sudo systemctl stop rougechain-validator
cp -a ~/.quantum-vault/mainnet ~/.quantum-vault/mainnet.backup     # keep a backup
cd ~/rougechain && git pull --ff-only
source ~/.cargo/env && cd core && cargo build --release --locked -p quantum-vault-daemon
mv ~/.quantum-vault/mainnet ~/.quantum-vault/mainnet.old
mkdir -p ~/.quantum-vault/mainnet
cp ~/.quantum-vault/mainnet.backup/node-keys.json ~/.quantum-vault/mainnet/
sudo systemctl start rougechain-validator

Paths and the service name are those of a source-build install (repository in ~/rougechain, data in ~/.quantum-vault/mainnet); adjust them to your setup. A node installed with the current install-validator.sh runs a signed release binary instead (/usr/local/bin/quantum-vault-daemon, with the rougechain CLI from the same release in /usr/local/bin/rougechain; data in /var/lib/rougechain/mainnet) and is upgraded by re-running the installer, which verifies the release signature before installing anything — see Signed releases. node-keys.json is your validator identity — keep it and never share it. A fresh sync takes under a minute.

Verify you are on the canonical chain:

  • block 49 has hash 4c7ec92d9fc4dd24146036474128072d07d146d5cde93a0d31c0462eea895abb (curl -s "localhost:5100/api/blocks?limit=100")
  • state_root from curl -s localhost:5100/api/stats equals the one at https://api.rougechain.io/api/stats at the same height

Live today

ComponentStatusNotes
RougeChain mainnet (rougechain-mainnet-1)LIVEML-DSA-65 accounts, transactions and block signatures
R1 production bridge (Base mainnet ⇄ RougeChain)LIVEHardened R1 architecture; see Bridge Security Model
XRGE bridge (BridgeVaultV2)TESTED / USABLEDeposit, withdrawal and payout paths tested end-to-end on mainnet
qETH bridge (RougeBridge)TESTED / USABLESame
qUSDC bridge (RougeBridge)TESTED / USABLESame
Verified BFT finality (FINALITY_V2, Release 2a)LIVE since block 150Every block carries its parent's ≥⅔-stake certificate; see Finality
Player-signed contracts (GAME_READY)LIVE since block 150Deploy and call signed by the player; see Smart Contracts
Game-ready contracts (GAME_READY 2)LIVE since block 160Tokens, NFTs, collections and minting, randomness, multi-hop moves; state root covers NFTs and contract state
Grind-proof game rolls (GAME_READY 3, host_block_hash)LIVE since block 170Commit-then-settle randomness; one-step host_random rolls can be ground by the sender
Payable contract calls (attach)LIVE since block 190Pay XRGE or tokens with a contract call; moves only if the call succeeds
Mintable custom tokens (creator-only minting, optional cap)LIVE since block 235Tokens created before 235 stay fixed-supply; see Token creation
Contracts read NFT royalties (host_nft_royalty_bps / host_nft_royalty_recipient)LIVE since block 235Royalties above 100 % refused at collection creation; nft_marketplace example
Monetary-integrity ruleLIVE since block 245Fee range, no slash, no faucet on mainnet, suspended types above
Pool transactions all-or-nothing (AMM_INTEGRITY)LIVE since block 260A pool transaction that cannot take effect changes nothing and pays no fee; one pool per pair; checked integer amounts
LP fee collectionLIVE"Collect fees" on Pools withdraws only fee earnings
ETH / USDC deposits through the bridge contract (depositETH / depositERC20, auto-claimed)LIVE — reopened 2026-10-05The manual claim route is closed at the public endpoint
Bitcoin deposits (BTC → qBTC)LIVEBitcoin withdrawals are switched off in the site while the relayer is stopped; see Bitcoin Bridge

The production XRGE bridge still relies on classical (ECDSA / Safe multisig) authorization on the Base side. It is hardened, capped and monitored, but it is not post-quantum on Base. The ETH/USDC contract is owned by a single operator hot key. No bridge component has been externally audited.

Validators and staking, as they run today

FactToday
Staked validators3 — about 100.09 M XRGE (the operator's producing validator), 10,000 XRGE (the operator's second node, non-producing) and 9,000 XRGE (an outside key)
Block productionOne validator produces every block (designated proposer = largest stake, since block 100); no fallback proposer — if it is offline the chain stops
FinalityFINALITY_V2 since block 150; the largest validator's own vote reaches the ⅔ quorum
Minimum stake10,000 XRGE is enforced by the node API only (/api/v2/stake, CLI). Consensus accepts any positive stake — hence a 9,000 XRGE validator
SlashingNone active. Missed-block accounting frozen since block 100; the legacy slash transaction is rejected from block 245; evidence-based slashing does not exist yet
Unbonding500 blocks (a block count, not a duration)
RewardsFees only: half the base fee per transaction burned, tip pool 20 % proposer / 70 % all validators by stake (no participation check) / 10 % __treasury__. The 0.1 XRGE minimum-tip floor draws from __staking_rewards__, which holds 0 XRGE on mainnet — so it pays nothing

Built and tested — NOT activated

ComponentStatus
V3 XRGE bridge (BridgeVaultV3)AUDIT CANDIDATE / NOT ACTIVATED — not deployed to Base mainnet
ML-DSA-65 post-quantum root authorization (on-chain verifier)Built, tested, frozen for audit — not deployed
Table-in-proof verifier architectureBuilt, tested, frozen for audit — not deployed
Deterministic epoch / withdrawal-root pipelineBuilt and tested — not running in production
Post-quantum root-authority signerBuilt and tested — a 2-of-3 genesis authority set has been assembled offline; no production root has been signed
Post-quantum authority rotation + deterministic authority scheduleBuilt and tested, rehearsed end to end on a throwaway network — not in use
Reproducible V3 contract build / audit candidateComplete
OP-stack deployment rehearsal (local devnet, throwaway keys and token)Complete
Shielded pool V2Specified, in development — see "Suspended since block 245"
XRGE holder staking contract (WASM, fixed reward pot, 3-day unstake delay)Deployed and tested on testnet only — not on mainnet

Consensus redesign — decided 2026-10-06, NOT built

A redesign of consensus was decided on 2026-10-06. Nothing of it is implemented or scheduled; it is gated on a consensus simulator and an independent review, and will ship as staged forks A–E whose heights will be announced in advance. It supersedes the earlier "Release 2b" and "Release 3" plans.

ElementPlanned
RoundsTendermint-style rounds with ML-DSA-65 prevotes and precommits
ProposerRotating, stake-weighted, in place of the fixed largest-stake proposer
Active setCapped at 32 validators
Minimum stake100,000 XRGE enforced by consensus, with a 30-day grace period for existing validators
Unbonding21 days
SlashingEvidence-based: double-signing 100 % of stake; downtime jail only
LivenessHourly heartbeat blocks so the chain advances without transactions
RewardsA per-time reserve subsidy in addition to fees
AdmissionTemporary approval of new validators, with a written exit condition
LaterValidator key separation and delegation

FINALITY_V2_ACTIVATION_HEIGHT is 150 (active). V3_BRIDGE_ACTIVATION_HEIGHT is None: no activation height has been chosen for the V3 bridge.

Scope of V3

  • V3 changes the XRGE withdrawal authorization path on Base to ML-DSA-65.
  • qETH and qUSDC are outside the V3 scope. They stay on RougeBridge with classical Base-side authorization.
  • The Bitcoin bridge is a separate system and is not part of V3. See Bitcoin Bridge.

Roadmap

MilestoneState
R1 bridge hardening✅ Complete (live)
V3 architecture✅ Complete
Reproducible audit candidate✅ Complete
OP-stack rehearsal🟡 Substantially complete
External review / audit⏳ Pending
Production deployment of V3⏳ Pending
FINALITY_V2 activation✅ Live (block 150)
Game-ready contracts (GAME_READY 1 + 2 + 3, payable calls)✅ Live (blocks 150, 160, 170, 190)
Mintable tokens, contract royalty reads✅ Live (block 235)
Monetary-integrity rule✅ Live (block 245)
AMM_INTEGRITY (pool transactions all-or-nothing)✅ Live (block 260)
Shielded pool V2🟡 In development, unaudited
Restoring the other suspended types⏳ Being rebuilt, no height
Consensus redesign (forks A–E)⏳ Decided, not built; simulator + independent review first
V3 activation⏳ Pending

Activation will be announced in advance with the exact block heights. Until then, nothing on this page in the "not activated" table protects user funds.