Numen v0.2.0
Numen v0.2.0 tightens consensus, validator entry, governance submission, EVM precompile safety, fee calibration, and release reproducibility. It bumps the runtime spec version to 101 and the node package to 0.2.
⚡ What ships
🛡️ Harder PoScan and deterministic difficulty
PoScan now derives generator seeds from the full 32-byte digest, domain-separates the protocol version, pins shortcut-sensitive generation parameters, and binds work hashes to the block pre-hash. Difficulty is verified from the block timestamp inherent instead of the node's local clock, so live import and historical replay reach the same verdict.
🧾 Accountable governance and validator entry
Identity is now part of the runtime. Referendum submission requires a judged identity with a plaintext social channel, and validator entry uses the same qualified identity gate. Public participation is now attributable, not just stake-backed.
🔐 Validator stake
Validator stake remains locked until expiry across exit, pending-queue drops, and stake-exempt paths.
🔐 EVM precompile protections
The native balances ERC20 precompile now rejects delegatecall/callcode access, closing the inherited-caller-context hole.
💸 Fees aligned across Substrate and EVM
Transaction fees now calibrate weight and length pricing against Frontier's EVM gas price. Substrate calls no longer undercut equivalent EVM execution by orders of magnitude, and fee multiplier bounds were retuned around that anchor.
🧱 Runtime migration and weights groundwork
In-house pallets now carry StorageVersion, vesting is wired into the runtime, and benchmarked weights are generated for runtime and local pallets. CI also covers the runtime-benchmarks feature path.
What's Changed
Node
- Update testnet raw chain spec by @motoZ-crypto in #166
- Bump node to 0.2 by @motoZ-crypto in #167
Consensus & Mining
- Verify difficulty from the block timestamp instead of the local clock by @motoZ-crypto in #147
- Harden poscan against mining shortcuts by @motoZ-crypto in #150
Runtime & Pallets
- Remove treasury root spend origin left over from sudo removal by @motoZ-crypto in #144
- Add
StorageVersionto in-house pallets by @motoZ-crypto in #149 - Add vesting pallet to runtime by @motoZ-crypto in #151
- Add identity pallet to runtime by @motoZ-crypto in #152
- Stop the vesting lock from advertising a fee exemption by @motoZ-crypto in #162
Governance & Validators
- Require judged identity to submit referenda by @motoZ-crypto in #153
- Require a plaintext social channel to submit referenda by @motoZ-crypto in #156
- Harden validator entry by @motoZ-crypto in #157
- Keep validator stake locked until expiry by @motoZ-crypto in #159
- Add referendum test from submission to spend dispatch by @motoZ-crypto in #155
EVM & Fees
- Calibrate transaction fees against the EVM gas price by @motoZ-crypto in #148
- Reject delegatecall into the balances-erc20 precompile by @motoZ-crypto in #160
CI
- Harden pr ci gates by @motoZ-crypto in #154
- build releases with production flags by @motoZ-crypto in #163
- add benchmark weight pipeline by @motoZ-crypto in #164
Docs
- Fix incorrect block time in difficulty docs by @motoZ-crypto in #145
- Update readme and link community health files by @motoZ-crypto in #146
- Update build guide by @motoZ-crypto in #161
Full Changelog: v0.1.0...v0.2.0