• v1.1.0 8f3195ed95

    ignotusnemo released this 2026-09-07 07:04:48 +00:00 | 0 commits to main since this release

    This is a mandatory protocol update. The new rules activate at block 95,125. Upgrade before that height.

    Upgrade

    v1.1.0 keeps the existing genesis, live State, wallet secrets, transaction format, exported receipts, recursive relation and authenticated matrices. Update nodes, GUI wallets and block-producing pool nodes before the activation height. Old nodes remain compatible before activation but cannot validate blocks under the activated rules. No restart at the activation height itself is needed for an already updated, running node.

    Protocol activation

    • Correct the ASERT fractional polynomial while preserving the exact legacy difficulty calculation for earlier blocks. The block target stays 20 seconds.
    • Encode HistoryStep terminals with canonical shared Merkle paths. Repeated authentication nodes are stored and transmitted once, then the original paths are reconstructed for the unchanged verifier and recursive relation.
    • Apply a 1,100,000-byte terminal limit to the canonical compressed encoding. Expanded decoding is also bounded. Before activation the legacy encoding and 1,048,576-byte cap remain in force. The block body has its own limit.
    • Allow eligible producers to use B255. Every mining session starts with B25 without a startup benchmark. Its first completed B25 preparation permits B255 for that session only if prepare_time × 4 <= 20 seconds. Ordinary fee-ordered selection determines the actual class within that capacity.
    • Apply the existing dynamic mempool fee floor only under real local load. Count or retained bytes reaching 80% enables it; both falling strictly below 50%, or an empty pool, reset it. Consensus State-growth fees are unchanged.

    Fixes and implementation improvements

    • Complete initial synchronization after an exact, verified commit of the selected tip, without waiting for a redundant probe of a moving chain. Retire disconnected manifest candidates and preserve valid source failover.
    • Continue partial mempool recovery in bounded batches. Preserve the 128-intent, 16 MiB response limits, one consumption-paced recovery lane, finite scans and 30-second per-peer request spacing. No idle seed polling is introduced.
    • Coalesce byte-identical gossip/direct deliveries without bypassing admission or suppressing required forwarding. Preserve selected bootstrap identity across authenticated reconnects and release replacement seed transports after a stable ordinary-peer handoff.
    • Replan Auto fees after a local fee rejection before admission, within the existing three-attempt limit. Explicit fees and accepted transactions are not silently increased. Evict intents that no longer meet the current consensus State-growth minimum, releasing their local reservations.
    • Prefer not to place coinbase or mandatory fund payouts in output slots of other pending local transactions. A bounded same-segment search falls back to the previous valid choice, so pending reservations cannot block mining or mandatory payouts. Amounts and recipients are unchanged.
    • Reduce repeated hashing, proof-leaf work, state copying and wallet I/O. Add conditional walletUtxoSnapshot polling with legacy RPC fallback. Preserve GUI address labels locally and append wallet artifact changes instead of rewriting entire collections.
    • Remove obsolete raw-segment Compact FRI opening code. Refine the wallet Johnson-bound analysis and update the Poseidon2b cryptanalysis audit without changing W65/H133, matrices or cryptographic protocol parameters.
    Downloads