*Welcome to this week’s Weekly Development Report, highlighting continued progress across the ecosystem. The ARK Connect team focused on removing legacy Platform SDK complexity and aligning the extension with a streamlined, Mainsail-only architecture, improving maintainability and connection flows. The ARK Scan team delivered performance improvements on the homepage by optimizing transaction queries, resulting in faster and more responsive data loading. The ARK SDKs and Documentation team enhanced documentation workflows with AI-assisted tooling and refined batch transfer handling in the TypeScript Crypto package. The ARK Vault team introduced the foundation for contract approval flows, alongside fixes to pricing, settings, and migrations to improve stability and user experience. Meanwhile, the Mainsail team expanded unit test coverage, strengthened EVM reliability, and improved API behavior, further reinforcing system robustness and correctness.
Development Activity Summary (July 03 – July 10, 2026)
Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from July 03, 2026, to July 10, 2026.
| Project | Commits | Authors |
|---|---|---|
| ARK Connect | 24 | 3 |
| ARK Scan | 9 | 1 |
| ARK SDKs & Docs | 12 | 2 |
| ARK Vault | 45 | 3 |
| Mainsail | 68 | 2 |
In total, 158 commits were merged across all projects this week. As always, commit counts fluctuate with sprint focus and task complexity.
ARK Connect Weekly Report
This week we focused on simplifying the architecture and removing legacy complexity carried over from the Platform SDK (PSDK), aligning the extension with its Mainsail-only scope.
We replaced the existing environment container with a lightweight wrapper tailored for a single-profile setup. The previous implementation executed the full PSDK lifecycle (boot, verify, persist) and supported multi-profile storage, which is unnecessary for the extension. The new approach stores encrypted profile data and exposes it only after unlocking, while removing the multi-profile repository layer. Migration handling for existing users has been preserved where needed.
We also removed the remaining multi-coin abstractions across the codebase, simplifying repositories, validators, contracts, and fee services to reflect the single-network (Mainsail) design.
In addition, we eliminated unused multi-network and multi-profile logic. This included removing unused sync flows, redundant configuration fields (such as feature flags and import methods), and unreachable code paths like custom node write operations. Profile structure was simplified by removing unused network collections and enforcing a single-address model, with updates applied to the migration logic accordingly.
We continued cleaning up leftover wallet and transaction logic from the PSDK. This included removing unsupported transaction types, multi-signature remnants, unused services, and dead code paths that could not be triggered in the current architecture. Only the parsing logic required for transaction history display was retained.
We have also improved the ARK Connect demo site by fixing the connection flow on the web app. After a successful connection, the application now automatically redirects users to the dashboard without requiring a manual page refresh, resulting in a smoother and more intuitive login experience.
Finally, we fixed an issue where the webapp disconnect state could become stuck across reconnect attempts, ensuring a consistent connection flow between the extension and web applications.
Next week we will continue the Mainsail migration, focusing on further reducing legacy dependencies, validating edge cases in the simplified architecture, and improving overall stability and maintainability of the extension.
ARK Scan Weekly Report
This week, we focused on improving performance on the homepage, specifically around transaction loading times.
We refactored the transaction queries to reduce unnecessary model instantiation and optimize data retrieval. Previously, loading transactions on the homepage could take several seconds, particularly due to inefficient query handling and overhead from multiple model instances. These improvements bring the production application closer in performance to the optimizations already implemented in the Mainsail branch, resulting in faster and more responsive transaction loading.
Next week we will continue optimizing performance across key areas of ARK Scan, with a focus on further query improvements, reducing backend overhead, and identifying additional bottlenecks in data-heavy views such as blocks and transactions.
ARK SDKs and Documentation Weekly Report
This week, we focused on improving documentation workflows and refining transaction handling in the TypeScript Crypto package.
On the documentation side, we introduced shared AI conventions by installing airc, aligning the repository with standardized tooling used across projects. We also added new documentation automation skills to streamline maintenance and accuracy. These include tools for generating or updating documentation directly from pull request diffs, as well as auditing existing documentation against the source code to detect drift. Both workflows are designed to be review-first, ensuring changes are validated before being applied.
In the TypeScript Crypto package, we refined the BatchTransfer transaction flow. A build method was introduced for the BatchTransferBuilder to support constructing transaction payloads when signing transactions with Ledger devices. This was followed by additional adjustments to allow BatchTransfer transactions to function without relying on the build method, improving flexibility in how transactions are created and handled internally.
These updates were included in the release of version 0.0.31.
Next week we will continue improving SDK packages and expanding documentation coverage, with a focus on adding practical examples, validating transaction flows across different use cases, and ensuring consistency between implementation and documentation.
ARK Vault Weekly Report
This week we introduced the initial implementation of the contract approval flow, alongside several fixes and improvements across pricing, settings, and migrations.
We added support for contract approvals as part of token-based batch transfers. Since tokens cannot be transferred directly at the protocol level and must go through smart contracts, certain interactions (such as batch transfers) require explicit approval for a contract to spend tokens on behalf of the user. This flow has now been implemented by introducing an approval step prior to executing the batch transfer.
The application now creates, signs, and submits the approval transaction and waits for it to be confirmed before proceeding with the batch transfer. As part of this implementation, we also added logic to check existing allowances on the ERC20 contract. Depending on the state, the flow either requests a new approval, reuses an existing unlimited approval, or requests additional approval if the remaining allowance is insufficient. The current implementation always prioritizes requesting approval to ensure the flow is fully supported, with further optimizations planned.
In addition, we resolved several issues related to market data. CoinGecko integration was fixed by switching to coin ID-based lookups instead of symbols, addressing cases where price data would return zero. CoinGecko has also been set as the default market provider, and request caching was introduced to prevent rate limit errors and reduce unnecessary API calls.
We fixed a crash in the settings page caused by null values in dropdown inputs and ensured that market provider migrations persist correctly for existing profiles. Lastly, we addressed a UI issue on the migration success screen to improve layout consistency.
Next week we will continue addressing issues identified during internal testing, with a focus on improving stability, refining the approval flow edge cases, and ensuring a smooth user experience across migrations and token interactions.
Mainsail Weekly Report
This week we focused on strengthening test coverage, improving EVM reliability, and hardening core components across the codebase.
We expanded unit test coverage across multiple packages, including api-common, api-evm, crypto-messages, and crypto-validation, achieving full branch coverage in several areas. Additional safeguards and validation checks were introduced, such as stricter handling in the serializer to only accept valid option values and improved guards in the ByteBuffer class to prevent invalid inputs.
In the API layer, we enhanced error handling by adding internal server error logging and improving pagination limits. The api-evm package received several fixes and improvements, including more accurate gas estimation, better simulation against real EVM behavior, returning empty logs instead of null, correcting sha3Uncles reporting, and ensuring the original (non-normalized) signature value is preserved.
We continued hardening the EVM implementation with various fixes, while also improving command handling and expanding test coverage across core and API commands. Additionally, we integrated Monocart to improve unit test reporting and branch coverage visibility.
Next week we will continue expanding unit test coverage and applying further improvements across the codebase, with a focus on stabilizing EVM behavior, refining API performance, and identifying additional edge cases through testing.
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.