Welcome to our latest Weekly Development Report, where we spotlight the valiant efforts of our development team. This week, the ARK Connect team simplified the extension by removing the external PSDK Ledger dependency, while the ARK Scan team merged ongoing work into Mainsail and delivered fixes to performance and validator state. On the documentation side, efforts were centered on preparing the site for the release of the Mainsail EVM public testnet. The ARK Vault team continued with Ledger improvements, general UI fixes, and Mainsail-related updates. Most importantly, this week marked a major milestone for Mainsail development with the launch of Mainsail EVM on the Public Testnet and bringing us a significant step closer to full EVM compatibility within the ARK ecosystem.
Development Activity Summary (July 25 – August 1, 2025)
Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from July 25, 2025, to August 1, 2025.
Project | Commits | Authors |
---|---|---|
ARK Connect | 8 | 1 |
ARK Scan | 10 | 1 |
ARK SDKs & Docs | 22 | 3 |
ARK Vault | 68 | 4 |
Mainsail | 47 | 3 |
During this period, the team maintained strong productivity and engagement, delivering 155 merged commits across all projects.
It’s important to note that weekly commit counts and project-specific data may fluctuate based on the focus of internal sprints, evolving objectives, and the complexity of tasks undertaken.
ARK Connect Weekly Report
This week, we removed the external PSDK Ledger dependency from the ARK Connect extension to simplify the codebase. We also resolved issues with importing Ledger addresses to ensure smooth functionality.
Next week, we’ll continue integrating Mainsail EVM and address any issues that arise during development.
ARK Scan Weekly Report
Work done this week included consolidating work by merging the branch into Mainsail, as well as fixes to performance and validator state. To be precise:
- Merged the
mainsail-develop
branch intomainsail
, consolidating recent development work and ensuring the latest features, fixes, and refactors are integrated into the primary Mainsail branch for upcoming testing and deployment phases. - Enabled the Validator Performance schedule command in
app/Console/Kernel.php
, allowing periodic performance checks for validators to be executed automatically via Laravel’s task scheduler. - Implemented a dormant validator state and adjusted the filtering logic so that validators without a rank are correctly marked as “Standby” instead of “Active”, improving clarity in validator status display and preventing confusion around rank “0” validators.
Next week we’ll be addressing any issues that are reported from the internal team and community.
ARK SDKs and Documentation Site
This week we have been focused on improving documentation site for the release of Mainsail EVM public testnet. Work done included:
- Updated the general Mainsail documentation site based on feedback, addressing clarity, structure, and content accuracy to improve the developer experience and alignment with recent Mainsail updates
- Aligned the documentation with recent SDK changes by updating references to EIP-155 and EIP-191, adjusting method names like
gas
togasLimit
, incorporatinglegacySecondSign
for Core addresses, updating message signing examples for EIP-191, and pointing URLs to their MainsailHQ equivalents, ensuring accuracy and consistency across developer resources. - Enabled anchor tag generation for
h3
headers in documentation, improving navigability and deep-linking to more specific sections within a page. - Fixed handling of
h3
slugs by updating configuration to ensure anchor tags are correctly generated, enabling direct linking to third-level headings in the documentation. - Updated the transaction tester documentation by fixing broken links and improving content on the tx-tester page, ensuring clearer guidance and navigation for users interacting with Mainsail transaction testing tools.
- Added further guidance on the validator registration process in the documentation, helping users better understand the necessary steps and requirements for registering a validator
- Clarified the meaning and usage of the BIP39 value during validator setup, including an explanation of the alternative method using a private key, to reduce confusion during configuration.
- Updated the Mainsail installation process to include installing
python3-setuptools
, setting default environment variables, and removing the forced checkout to the main branch to streamline source installation.
Next week, we’ll be further improving the Mainsail documentation site based on community feedback, as well as addressing any SDK issues that get reported.
ARK Vault Weekly Report
This week, we have been working on Ledger improvements, general UI fixes, and Mainsail enhancements. Here’s a summary of the work completed:
- Disabled the Ledger import option on the public testnet to prevent users from importing Ledger wallets in that environment.
- Refactored error handling for user-rejected Ledger transactions to show a clear “rejected” message, distinguishing it from generic errors, and added “back” and “close” options for quick retries or adjustments.
- Adjusted fee validation logic so that the 250 ARK locked balance check applies only to validator registrations, allowing other registration types (like usernames) to proceed without it.
- Resolved a timing issue where the transaction review screen appeared prematurely by ensuring it waits for the Ledger connection and signing flow to complete.
- Corrected header margin on the contacts page for consistent spacing and improved visual alignment.
- Centered the checkbox within the create address flow to enhance UI consistency.
- Updated Send button colors in dim mode to use
dim-blue-600
by default anddim-blue-700
on hover, improving visual feedback. - Added
.env.test
to network configurations, allowing Vitest to use predefined values for easier test/mock maintenance and local network customization. - Improved the transaction block status text by styling the “N/A” label with a semibold font weight for better emphasis.
- Replaced the BLS key documentation link with a direct resource to provide clearer access to key information.
- Enhanced the
CreateProfile
test suite with refinements that boost reliability and accuracy. - Increased test stability by addressing flaky settings domain coverage: added a targeted test and reorganized existing ones into appropriate
describe
blocks. - Expanded test coverage for the
src/app/lib/mainsail/*
module. - Refactored environment storage to include the app version from
package.json
, and introduced automatic profile cleanup in environments missing a version tag. - Implemented logic to hide the Exchange tab by toggling its visibility based on the
VITE_HIDE_EXCHANGE_TAB
flag.
We’ll continue working on community feedback, address any reported issues, and make further Mainsail integration improvements.
Mainsail Weekly Report
This week was exciting and a big milestone for Mainsail development as we announced the launch of Mainsail EVM on Public Testnet, marking a significant step toward bringing full EVM compatibility to the ARK ecosystem. This release introduces key features like 2-stage BFT consensus, instant block finality, on-chain usernames, and an updated validator set—all built on a snapshot of the Core v3 Devnet.
We invite developers, validators, and community members to jump in, explore, test, and help shape the future of Mainsail EVM. Your feedback will be vital in guiding us toward a stable mainnet launch.
Read the full announcement, Public Mainsail EVM Testnet Launches - Ushering in a New Chapter, to learn more.
We have also continued making improvements to Mainsail EVM. The work completed this week included the following:
- Implemented transaction usage in consensus storage to store proposals, prevotes, and precommits as a single atomic commit.
- Updated
revm
andnapi-rs
to the latest version. - Replaced
ethers
withviem
to improve overall node performance and enhance block synchronization. - Skipped dirty validator calculation during block commit when the Public API is disabled.
- Modified the ETH JSON-RPC API to return data in the legacy
0x0
Ethereum format, which is the default format in Mainsail. - Added a
config:forger:bls
command for setting up validators using a private BLS12-381 key. - Enhanced the
install-testnet.sh
script to install additional packages, enabling support for more cloud providers. - Adopted the
develop
branch for releases tagged withrc
for the public testnet, and continued using theevm
branch for internal releases. - Increased the
pm2
version specified inpeerDependencies
.
Next week, we will focus on testing and refining the Public Mainsail Testnet, alongside preparing a new release that includes all recent fixes. We also plan to improve transaction rebroadcast logic.
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 on Twitter (X)
Follow us on X (Formerly Twitter) and keep checking the blog to stay up-to-date on all of our new releases. We post a weekly development report so you can easily see what we’ve been up to and follow along our journey towards making your decentralized future a reality.