Gonka v0.2.13 went live on 2026-05-15 as an on-chain software upgrade proposal. It is a maintenance release: seven correctness fixes across the chain, the decentralized API, and devshard, plus three governance parameter changes and the activation of a second AI model (MiniMax-M2.7) on the network. There are no consensus-breaking architecture shifts in this version.
What shipped
-
Confirmation PoC reward accounting fix. During multi-model bootstrap, confirmation PoC used different model sets for measured weight, preserved weight, and reward rescaling. Honest miners serving both an eligible model and a not-yet-eligible model could see their confirmation weight reduced. v0.2.13 stores one epoch snapshot of confirmable models and weight-scale factors and reuses it for both confirmation and reward calculations. The migration disables confirmation PoC triggers for the rest of the upgrade epoch via a 3000-block
UpgradeProtectionWindow, so the snapshot logic starts from the next epoch cleanly. -
Devshard storage moves to epoch-scoped Postgres (PR #1145). Before v0.2.13, devshard kept all escrow history in a single SQLite store that grew without bound. The new layout partitions sessions, diffs, and signatures by
epoch_idin Postgres, prunes in the background, and keeps only the last 3 epochs. SQLite remains as a local fallback. -
Devshard escrow parameters opened up.
DevshardEscrowParams.MaxEscrowsPerEpochis now500_000, andMaxNonceis1_000_000(up from a hardcoded20_000in the settlement path). The hard limit that was blocking high-throughput devshard runs is gone. -
Confirmation snapshot and invalidation fixes landed via PR #1149 (snapshot) and PR #1147 (devshard inference invalidation).
-
Participant reactivation no longer accumulates penalties.
ConsecutiveInvalidInferenceswas not reset when a participant returned to the ACTIVE state. A node could come back from invalid status and get re-invalidated after a single new failure. The counter now resets on reactivation and on upcoming promotion. -
Authz backfill for dealer complaints. v0.2.12 added
MsgRespondDealerComplaintsto the permission list but did not migrate existing cold-to-warm ML ops grants. DAPIs that joined before v0.2.12 could not respond to dealer complaints. The migration backfills the grants on every existing pair. -
Upstream response parsing widened. Some OpenAI-compatible inference upstreams return
stop_reasonas a number, not a string.Choice.StopReasonnow accepts any JSON type, so those responses no longer fail to unmarshal. -
Node manager default port.
NodeManagerGrpcPortdefaults to9400when unset. Join compose uses the same default, so devshard can reach the API without manual configuration.
Under the hood: governance quorum rebalance
The most consequential parameter change in v0.2.13 is on the governance side. Genesis guardians held about 34% of adjusted voting power, which meant that when guardians did not vote, the chain-wide 33.4% quorum was unreachable from ordinary voters alone. Ecosystem proposals stalled.
v0.2.13 makes two coupled changes. GenesisOnlyParams.GenesisGuardianMultiplier drops from its previous value to 0.33334, reducing guardian power from about 34% to about 25%. Then the chain-wide governance quorum is set to 0.25. Quorum is computed against total bonded power; with guardians at 25% and not voting, the effective quorum among the remaining 75% becomes 0.25 / 0.75 = 0.334. So the policy is still "one third of the non-guardian voters must show up", but the math now resolves to that ratio without depending on guardians.
Under the hood: MiniMax-M2.7 as the second governance model
The release adds MiniMax-M2.7 (MiniMaxAI/MiniMax-M2.7) as a governance model and a PoC model config with PenaltyStartEpoch = 271. PoC weight-scale factors and validation thresholds are recalibrated against a Qwen-on-B200 reference after the vLLM 0.20.1 release:
| Model | WeightScaleFactor | ValidationThreshold |
|---|---|---|
| Qwen3-235B-A22B-Instruct-2507-FP8 | (reference) | 0.940 |
| Kimi-K2.6 | 0.78 | 0.900 |
| MiniMax-M2.7 | 0.3024 | 0.922 |
Kimi had been measuring too high on B-series GPUs. The new factor brings it to Qwen-on-B200 plus a 10% top-tier premium. MiniMax matches Qwen-on-B200 directly. Kimi also gets --enable-auto-tool-choice added to its ModelArgs if absent.
Impact
For hosts: devshard storage no longer needs manual maintenance, and the MaxNonce = 1_000_000 ceiling makes high-throughput devshard runs viable. Hosts joining after the on-chain upgrade pull the updated api and node container versions from deploy/join/docker-compose.yml; existing hosts do not need to manually update those containers.
For validators and miners: confirmation weight is now stable for participants serving both eligible and bootstrapping models. Coming back from an invalid state no longer leaves a participant one failure away from re-invalidation. DAPIs that joined before v0.2.12 can respond to dealer complaints from epoch one of v0.2.13.
For governance: ecosystem proposals can pass quorum without guardian participation. Combined with the bounty distribution merged the previous day (PR #1168), v0.2.13 closes out the loose ends of the v0.2.12 cycle.
The release maintains backward compatibility for clients of the inference API. There is no breaking change to the OpenAI-compatible interface.