25th Sep 2026
4 min read

ARK Development Report - September 25, 2026

Welcome to this week’s Weekly Development Report, highlighting continued progress across the ecosystem, with ongoing work focused on reliability, security, and keeping the codebase consistent as development moves forward. This week, Mainsail saw further work on consensus safety, block processing, and shared utilities, alongside additional testing and hardening ahead of the upcoming testnet reset. Work also progressed on dependency updates across ARK Scan, ARK Vault, and ARK Connect, while internal testing of all three applications continued in parallel.

Development Activity Summary (September 18 – September 25, 2026)

Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from September 18, 2026, to September 25, 2026.

Project Commits Authors
ARK Connect 0 0
ARK Scan 0 0
ARK SDKs & Docs 0 0
ARK Vault 0 0
Mainsail 44 2

In total, 44 commits were merged across all projects this week. As always, commit counts fluctuate with sprint focus and task complexity.

Mainsail Weekly Report

This week’s Mainsail work focused on strengthening consensus safety, tightening block processing, and cleaning up shared utilities. New double-sign functional tests were added to consensus, ensuring that a validator never signs a proposal, prevote or precommit twice, even after the node is restarted. Proposals are now also checked so that their valid round, when present, is lower than the current consensus round. Peers that send an invalid proposal are banned, and validators prevote nil for that block. In addition, consensus now waits for a block to be fully processed before entering onProposal or onProposalLocked, which prevents invalid prevotes when a proposal arrives while other messages are still being handled.

Timestamp verification was removed from block processing and moved to the proposal stage. Previously, a node with clock drift could become stuck and stop responding after receiving more than two-thirds of the precommits for a block. Now, if a proposal has an invalid timestamp, the node prevotes nil, but if the majority of validators agree the proposal is valid, the node still accepts the block. The block processor logic was also improved, and the package cleaned up. Rejections from event listeners are now handled, blocks with a round higher than the consensus round are rejected, payload size verification was improved, and a call to FeeCalculator.calculateConsumed with swapped arguments was fixed.

The blockchain-utils package received a similar cleanup. Currency formatting now uses bigint to keep precision on very small amounts, and the isBlockChained logic was moved into the block verifier in the processor package. Percentile calculation was moved into the P2P package, the only place it is used, and the timestamp calculator was simplified and optimized. The isMajority and isMinority methods now use integer arithmetic, while isNewRound and calculateRound were fixed to use unified logic for detecting round changes, resolving issues when the genesis block is not at height 0, such as after restoring from a snapshot. Finally, a new GitHub workflow now checks the tsconfig references of each package, together with a fix for the existing references, improving TypeScript builds and IntelliSense in VS Code.

Next week, work will continue on the P2P, blockchain-utils and configuration packages, with a focus on further cleanup, test coverage and hardening against faulty or malicious peers, as preparations for the upcoming testnet reset continue.

This week we also published an in-depth article covering the latest changes to Mainsail, from crash-safe consensus and fairer validator selection to EVM performance work and our plans for the upcoming testnet reset. Be sure to check it out: Mainsail Hardens Up: Consensus Safety, EVM Performance and an Upcoming Testnet Reset.

Other Work Done

With the dependency audit of ARK Scan, ARK Vault, and ARK Connect complete, we’ve moved on to the updates themselves. Most packages are coming up cleanly, but some of the bigger version jumps bring breaking changes, such as removed or renamed APIs, stricter type checks, and changed defaults in the build tooling, which need to be worked through app by app. We’re handling these one at a time, verifying each update in isolation so any regression can be traced back to a specific change instead of a large batch of upgrades.

In parallel, internal testing of all three apps continues. This gives us a steady baseline to check the updated builds against, so that behavior users rely on stays the same once the new versions ship.

Feedback & Feature Requests

If you are using our open-source products and would like to provide feedback or request a feature, please feel free to contact us via the contact pages for the specific product you are using or open an issue on GitHub.

Quick access links to GitHub issues pages:

Follow Us on X

Follow us on X and keep an eye on the blog to stay up to date with everything we ship. We publish a development report every week so you can follow along as the ecosystem grows.

Share:

Get in Touch!

Whether you want to learn more about ARK Ecosystem, want to apply for developer bounty, become our partner or just want to say Hello, get in touch and we will get back to you.



An Ecosystem of Developers

Join us on our journey to create the future of Web3.