Welcome to our latest Weekly Development Report, where we spotlight the valiant efforts of our development team. This week, the ARK Scan team continued progressing with the Inertia migration while making several general development improvements. The ARK Vault team concentrated on advancing the Ledger migration feature, and the Mainsail team focused on database enhancements, performance optimizations, and updates to logging and P2P functionality to further strengthen reliability.
Development Activity Summary (October 17 – October 24, 2025)
Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from October 17, 2025, to October 24, 2025.
| Project | Commits | Authors |
|---|---|---|
| ARK Connect | 0 | 0 |
| ARK Scan | 39 | 2 |
| ARK SDKs & Docs | 0 | 1 |
| ARK Vault | 44 | 4 |
| Mainsail | 11 | 2 |
During this period, the team maintained strong productivity and engagement, delivering 94 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 Scan Weekly Report
This week, we continued working on the Inertia migration and made several general development improvements. Work done included:
- Updated the
.nvmrcfile to use Node.js version 22, replacing the outdated version 12 reference to align with the project’s current environment and avoid nvm-related issues. - Integrated the
typescript-transformerpackage to automatically generate TypeScript definitions from data objects, removing the need for manual type creation and ensuring consistent typing throughout the codebase. - Added an Inertia-powered option to vote for a validator directly from ARK Scan when viewing a validator’s address, streamlining and simplifying the voting process.
- Replaced remaining manual types with Laravel-generated Spatie Data Objects that automatically convert to TypeScript. Introduced
resources/inertia/global.d.tsto define sharedPageProps, improving type reuse and consistency across current and future Inertia pages.
Next week, we’ll continue progressing on the Inertia migration, address any reported issues, and make further general improvements.
ARK Vault Weekly Report
This week, we focused heavily on the Ledger migration feature, which was the primary area of development. Work done this week includes:
- Implemented Ledger connection handling for the migration flow, requiring users to connect their Ledger device before starting migration. The side panel now opens with a “Connect your Ledger” prompt, consistent with the existing Ledger import experience.
- Added support for 1:1 Ledger migration, enabling users to migrate a single address directly. After selecting an address, transaction details are displayed for review, sent to the connected Ledger for approval, and upon confirmation, the migrated address is added to the portfolio while the old one is removed. If a transaction is rejected, users can retry or cancel the process.
- Implemented address verification through message signing, allowing users to confirm ownership of a target address before migration. Supports both successful and failed verifications, with the ability to send messages to the Ledger for signing and validate them on Vault’s side.
- Added functionality to display migratable Ledger addresses after device connection, scanning the first five and highlighting those with funds. Users can scan more if needed and select which addresses to migrate, including performing single-address migrations that guide the following flow steps.
- Adjusted form button styling to correctly use dim mode colors, replacing the incorrect dark mode appearance for improved visual consistency.
Next week, we’ll be finalizing the Ledger migration flow while continuing to work on general improvements and design updates.
Mainsail Weekly Report
This week, we focused on database improvements, optimizations, and updates to logging and P2P functionality. Work done included:
- Reconstructed EVM storage to store objects instead of serialized data, with compression applied. This change improves restore times and reduces database size by approximately 40%.
- Preserved error context in EVM-related errors for clearer debugging and tracing.
- Updated
inversifyto the latest version and replaced the constructor usage with the@postConstructdecorator in theInstanceManagerfor improved lifecycle management. - Reformatted logs so that all entries align consistently in-line regardless of log level, improving readability.
- Implemented a new
WorkerLoggerclass and removed worker logic fromlogger-pino, separating concerns for cleaner architecture. - Added support for log contexts such as
p2p,evm,consensus, andtx-pool, displaying context information in log output. Introduced initial color differentiation for each context to make logs easier to scan. - Removed the
criticalandemergencylog levels. The current log levels are now:alert,debug,error,info,notice, andwarn. - Removed the
isValidLevelmethod from the logger interface to simplify and declutter the codebase. - Implemented P2P statistics logging, recording average, median, minimum, and maximum latencies each round, along with totals for peers, banned peers, and peers pinged in the last round.
Next week, we’ll continue working on P2P improvements and optimizations, as well as expanding unit test coverage for a more robust codebase.
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.