The last week of March brought one of the heaviest development sprints in recent Gonka history: 33 issues and pull requests closed across consensus, inference, networking, bridge security, and CI infrastructure.

v0.2.12 Hits Testnet

The team merged the v0.2.12 upgrade into Testnet (#962), bundling inference scripts (#964) and a batch of stability fixes. This marks the start of the validation cycle before a MainNet rollout.

Continuous Proof of Computation Foundation

The biggest architectural addition this week: Continuous PoC (#845). Instead of requiring GPU nodes to pause inference for separate PoC-only proving phases, they can now generate nonces in parallel with active inference work.

The PR introduces new proto definitions, governance parameters (all disabled by default), keeper collections, and a full message handler with rate limiting, nonce minimums, and automatic epoch summary aggregation. Key params include PocUtilizationTargetBps (99.5% default idle GPU target) and ValidationSampleRateBps (5% random validation).

This is foundational infrastructure — the feature ships disabled, with activation expected in a future governance proposal.

PoC v1 Removed, State Endpoint Extended

Legacy PoC v1 code was fully deleted (#742, #749), cleaning up technical debt accumulated since the v0.2.8 migration. The state endpoint now exposes PoC metadata directly, giving operators better visibility into validator performance without extra RPC calls.

Consensus and Validation Hardening

A cluster of fixes targeted epoch management and validation reliability:

  • Per-epoch validation submission rate limit (#958) prevents validators from flooding the network with duplicate submissions
  • Unified epoch cache invalidation (#959) eliminates race conditions from multiple cache paths
  • Bandwidth limiter max-size guard (#960) caps memory usage in the bandwidth tracking maps
  • Graceful shutdown with signal handling (#957) in the decentralized API prevents orphaned connections during restarts
  • InjectParamsIntoContext error propagation (#956) ensures validation failures surface properly instead of silently passing

Warm Keys and Subnet Improvements

Two P0 issues closed: deterministic warm key handling (#913) resolves non-deterministic behavior in key management across subnet nodes, and subnet timeout voting (#895) allows hosts to vote on inference timeouts even before seeing MsgStartInference — preventing deadlocks in edge cases.

Fast Circuit Breaker in Production

The intra-epoch fast circuit breaker (#942, #943), covered in detail in a separate post, shipped with reputation-adjusted executor selection and cooldown/probe recovery.

Infrastructure and DevOps

CI pipelines got faster with two long-requested changes: GitHub Actions caching (#338) and Docker registry cache via GHCR (#879). Together these cut build times for the main repo significantly.

Other infrastructure work included connection pooling for query clients (#533), atomic transaction fixes (#552), onboarding documentation improvements (#698), and the Serokell /chat/completion flow (#612) reaching completion.

Bridge Security

Three bridge safety issues (#931, #932) were patched: lexicographic-to-numeric block comparison, silent address validation failures replaced with explicit errors, and chain ID mapping made consistent. These fixes were also covered in a dedicated post.

By the Numbers

Metric Count
Issues/PRs closed 33
P0 issues resolved 3
New architectural features 2
Security patches 3
CI/DevOps improvements 2

Week 13 set the stage for v0.2.12 on MainNet. With Continuous PoC foundations laid, PoC v1 retired, and a wave of stability fixes merged, the next upgrade carries both new capability and reduced technical debt.