Roadmap

What's shipped, what's next, what we're kanoodling on.

This page is our kanban board. Every phase we've finished, every item we're actively building, every half-formed idea sitting in the parking lot. Updated as often as the code changes — with dev notes in between for the thinking that doesn't fit a task row.

Shipped

50+ items shipped, 20,000+ blocks produced.

The chain is running. Five validators across three continents producing blocks under real BFT consensus. Explorer, CLI wallet, Chrome extension, desktop app, playground, SDK — all live today.

In progress

The current focus — delegate, govern, distribute.

Staking v2 minimums / caps / unbonding shipped today. Remaining: commission, delegation, governance v2 tiers, and the ASE-balance coupling that makes bond actually move tokens. All blocking Phase 3.

Kanoodling

Ideas worth remembering, not ready to commit.

Cross-contract async calls. Dynamic fee adjustment. Block-time tuning. DeFi primitives. The parking lot is where an idea lives until we have the evidence or the time to move it up the board.

Active build

What we're building right now.

Priority 01

Governance v2 tiers.

Split proposals into hard and soft. Soft for parameter tuning and treasury spends. Hard for invariants, VM libraries, and economic changes — 3-week window, 2/3 supermajority, 10% stake quorum. Hard floors stay unreachable.

Priority 02

Commission + delegation.

Per-validator commission rate (20% cap, 24h change cooldown), delegator accounts with pro-rata rewards and shared slashing, redelegate helper. Rest of Staking v2. Pairs with ASE-balance coupling work.

Priority 03

Operator app packaging.

Signed .dmg for macOS, .exe for Windows, .AppImage + .deb for Linux. Auto-update from release artifacts. Unblocks the download page and gets the Operator into non-dev hands.

‣ Dev note

A chain that claims ‘anybody can validate’ can't halt when a laptop closes. So we made the committee a function of who actually showed up in the last 30 blocks.

after the 23h outage

Next Up7 items

Governance v2 — hard/soft tiers

Tier field on proposals, different bond + quorum + window + supermajority per tier. Hard floors stay governance-unreachable. Needed before Phase 3.

IN PROGRESS

Commission + delegation

Per-validator commission (20% cap, 24h cooldown), delegator accounts with pro-rata rewards + shared slashing, redelegate helper. The rest of Staking v2.

IN PROGRESS

ASE balance coupling for bond / withdraw

Today staking tracks nominal stake only; caller’s ASE balance isn’t debited on bond or credited on matured withdraw. Same chain-integration thread that makes value transfer real.

NEXT

Operator app packaging

electron-builder → signed .dmg, .exe, .AppImage, .deb. Auto-update wiring. Unblocks the website /download page.

IN PROGRESS

Governance UI in Operator

Create-proposal form and vote buttons in the Governance tab. Read-only today.

NEXT

Website /download page

Aggregates all install paths (Chrome extension, Operator, CLI, VPS one-liner) with status chips. Pending until Operator packaging ships.

NEXT

Recovery phrases across wallets

BIP-39 24-word format with Asentum-specific Dilithium3 derivation. Same format across extension + Operator + CLI.

NEXT

‣ Dev note

Design target is 2-second blocks. Runtime is 6. The right answer isn't a guess — it's whatever p99 vote propagation tells us when we have 50 validators instead of 5.

on block time tuning

Shipped

The work that's already running in production.

Phase by phase, oldest first. None of this is speculative — every row below is code you can run or a block you can look up on the explorer today.

Phase 1.0Chain coreJan – Feb 2026

BFT consensus engine

Tendermint-style with pre-vote / pre-commit / 2/3 finality. Tested against a 4-validator local devnet before any network code was written.

SHIPPED

Dilithium3 signatures

ML-DSA-65 (NIST FIPS 204) across every signature path: votes, transactions, block proposals. Zero classical crypto anywhere.

SHIPPED

Hardened JavaScript VM

SES Compartments for contract execution, frozen primordials, no ambient authority. Deterministic across CPU architectures.

SHIPPED

Sparse Merkle Tree state

BLAKE3-keyed over LevelDB. State root in every block header.

SHIPPED

Staking + slashing as contracts

Both modules are system contracts, not special chain code. Upgradeable via governance, inspectable like any other contract.

SHIPPED

‣ Dev note

Four validators, 200 lines of code, zero network sockets. The whole BFT engine gated on a single Promise. It just worked.

building consensus before networking

Phase 2.0Public testnetMar 2026

testnet.asentum.com live

6-second blocks, BFT finality, ML-DSA-65 everywhere. Caddy + Let's Encrypt TLS. JSON-RPC open to all origins.

SHIPPED

Block explorer (rebrand)

Dark editorial palette replacing the phosphor-green terminal look. Block / tx / address / contract detail pages, search, validator list.

SHIPPED

Faucet

Drip test ASE to any address from the explorer, via RPC, or via the wallet UI.

SHIPPED

MetaMask compatibility

Standard eth_* JSON-RPC methods work unmodified. MetaMask reads the chain; the Asentum Wallet does the Dilithium3 signing.

SHIPPED

‣ Dev note

Spent weeks fighting libp2p mesh negotiation. Then I just POSTed votes over HTTP to every peer. Less cool to say. Way more reliable in practice.

on killing libp2p

Phase 2.5Tooling & UXApr 2026

CLI + curl | sh installer

Single Node-SEA binary for macOS, Linux, Windows. One-liner drops it on $PATH and pre-configures the testnet RPC.

SHIPPED

Native Chrome extension wallet

Manifest V3 with window.asentum provider. Password-encrypted vault, per-origin permissions, per-tx approval popups, multiple accounts.

SHIPPED

Contract playground

In-browser IDE at /playground. Three templates, wallet connect, post-deploy method introspection with auto-generated forms.

SHIPPED

@asentum/sdk

TypeScript SDK — AsentumClient, AsentumWallet, AsentumContract. ~14 KB bundled, works in Node and browser.

SHIPPED

Asentum Operator desktop app

Electron app spawning a real validator as a child process. GUI onboarding, chain sync, staking form, system-tray background mode.

SHIPPED

On-chain governance v1

Single-tier proposals with bond, quorum, voting window, execution timelock. VM library injection end-to-end.

SHIPPED
Phase 2.7Validator clusterApr 2026

Five validators, three continents

Four Hetzner CX22 boxes across Germany + US East + US West, plus a local Mac. BFT surviving real network jitter.

SHIPPED

Graceful quorum transition

PENDING_BLOCKS = 10. New validators enter a pending window before being counted for consensus.

SHIPPED

Kill-one survival verified

Shut down primary, three survivors kept producing blocks, primary rejoined and synced back. Zero tombstones, zero forks.

SHIPPED
Phase 2.8Liveness + Staking v2Apr 2026

Liveness-aware committee

Committee = registered validators who proposed ≥ 1 of the last 30 blocks. Deterministic, home-validator tolerant. A closed laptop no longer halts the chain.

SHIPPED

Minimum self-bond (500 ASE)

bond() rejects totals below the floor. Applies to initial bonds and partial tops. Exiting below the floor must be a full unbond.

SHIPPED

Maximum self-bond (100k ASE)

Hard cap per identity. Want more voting power? Run another validator. Soft cap with diminishing rewards is on the roadmap once rewards ship.

SHIPPED

14-day unbonding window

unbond() queues into pending withdraw with unlockAt = block + 604,800. Stake stays slashable during the window. Closes the slash-and-run hole.

SHIPPED

withdraw() + getWithdrawable()

Claim matured withdrawals; wallets read the pending/matured breakdown for the UI. getStakingParams() exposes the four constants for config-driven frontends.

SHIPPED
Queued6 items — not started

VPS one-liner installer

curl | sh for Ubuntu operators. Interactive onboarding + an asentum-validator command with status / balance / earnings subcommands.

PLANNED

Chrome Web Store resubmission

Get v0.3.0 back in front of reviewers. Listing copy, screenshots, privacy declarations.

PLANNED

Validator cluster expansion

More public validators, community-run. Pairs with staking v2 — delegation lets small operators run meaningfully.

PLANNED

docs.asentum.com + AIPs

Move docs to a subdomain. Formal Asentum Improvement Proposal process — governance-adjacent off-chain discussion.

PLANNED

Contract IDE

Evolve the playground. Multi-file projects, in-browser testing against the VM, deployment history.

PLANNED

CI pipeline for SEA builds

GitHub Actions matrix → artifacts on release tag → auto-rsync to /install/. Replaces manual local cross-build.

PLANNED

‣ Dev note

No delegation? No mainnet. No hard/soft governance? No mainnet. Docs misaligned with code? No mainnet. The gate is in the list, not on a date.

on why mainnet isn't scoped

Parking Lot11 ideas

Cross-contract E() async calls

The big one. Async message-passing, the mechanism that makes reentrancy structurally impossible. Designed, not shipped.

BRAINSTORM

WebSocket subscriptions

eth_subscribe for newHeads, logs, pending txs. HTTP-only today. Not hard, just hasn't been needed.

PARKING LOT

Dynamic EIP-1559 base fee

Static at 1 wei today because block utilisation has been trivial. Adjustment algo ready to drop in when congestion appears.

PARKING LOT

Service-node reward pool

15% of base fees diverted before burn, routed to service nodes. Needs per-request tracking + periodic payouts.

PARKING LOT

Block time 6s → 2s

Design target is 2s, runtime is 6s. Drop it once we have real-data for p99 vote propagation.

BRAINSTORM

Historical balance queries

eth_getBalance(addr, blockTag) — needs state snapshots per block. Archive-mode only.

PARKING LOT

Per-opcode gas metering

Finer metering would price individual JS operations more fairly but adds real VM complexity.

BRAINSTORM

Bond burning on slashing

Today a slash tombstones but doesn't burn. Burn closes the slash-and-run loophole. Trivial once burn fraction is signed off.

PARKING LOT

Code-signing certs

Apple Developer ID + notarization for macOS. EV Authenticode for Windows to kill SmartScreen. Budget question.

PARKING LOT

DeFi / AMM primitives

Reference AMM, reference lending, reference stablecoin. Not part of the protocol, but part of what needs to exist.

BRAINSTORM

Mainnet launch

Phase 4. Not dated. We ship when the spec is closed, economics finalised, and external audits come back clean.

BRAINSTORM

‣ Dev note

Every chain shows you the curated ‘we're building this’ list. The parking lot is where we also show what we're NOT building — yet.

on keeping the lot visible

Testnet live · Five validators · 20,000+ blocks

A chain that's built in public, one row at a time.

Join the launch list and we'll send you a note whenever something significant lands — never anything else. Or read the thesis if you want the why before the what.