Welcome to this week’s Weekly Development Report, highlighting continued progress across the ecosystem, with a focus on reliability, performance, and improving compatibility between core components. This week, Mainsail received further improvements to API performance, database handling, and transaction-pool processing, alongside additional safeguards for P2P communication. Work also continued across the crypto SDKs to align legacy transaction signing and improve message signature verification, while ARK Scan and ARK Vault received updates to support the latest development environment and resolve issues identified during testing.
Development Activity Summary (October 30 – November 06, 2026)
Below is a breakdown of the total number of merged commits and contributing authors by project, highlighting development activity from October 30, 2026, to November 06, 2026.
| Project | Commits | Authors |
|---|---|---|
| ARK Connect | 0 | 0 |
| ARK Scan | 2 | 1 |
| ARK SDKs & Docs | 22 | 3 |
| ARK Vault | 3 | 1 |
| Mainsail | 78 | 2 |
In total, 105 commits were merged across all projects this week. As always, commit counts fluctuate with sprint focus and task complexity.
ARK Scan Weekly Report
This week’s ARK Scan work focused on updating the Docker configuration to support the latest development environment.
The Dockerfile was adjusted to ensure compatibility with Node.js 24 and pnpm, allowing the application to build and run correctly with the updated tooling.
Next week, we’ll continue aligning the development and deployment environments, address any issues identified during internal testing, and work through any of the remaining dependency updates.
ARK SDKs & Documentation Site Weekly Report
This week’s SDK work focused on aligning legacy transaction signing across all crypto SDKs and improving the security and compatibility of message signature verification in the PHP Crypto SDK.
The legacy second-signature implementation was corrected across the Python, PHP, Go, TypeScript, and Java Crypto SDKs. These changes ensure that the second signature is generated over the signed transaction hash, keeping the implementation consistent across all supported languages.
The PHP Crypto SDK also received important improvements to the Message class. Signature verification now validates the complete signature format instead of checking only the r and s values. This prevents different malformed representations of the same valid signature from being accepted, improving consistency for applications that rely on signature strings for deduplication or replay protection. Malformed signatures, public keys, and invalid message input now fail safely by returning false rather than throwing errors that could lead to unexpected server responses. These changes move input validation into the SDK itself, reducing the need for individual applications to implement their own checks.
Compatibility was also improved to support 0x-prefixed signatures generated by ARK Vault and the TypeScript SDK, as well as v values of 0 and 1 accepted by ethers. Verification now follows the same approach as the TypeScript SDK by recovering the signer’s address and comparing it with the expected address. The changes address verification and input-handling issues; they do not indicate that signature forgery was previously possible, as the r and s values were still checked against the public key.
Next week, we’ll continue aligning the crypto SDKs, review cross-SDK compatibility, and expand testing around transaction signing and message verification. We’ll also update the documentation where necessary to reflect the latest implementation changes.
ARK Vault Weekly Report
This week’s ARK Vault work focused on fixing an issue that prevented users from creating new addresses on the Mainsail version.
The error occurred after completing the address creation process and closing the side panel. It was caused by the active tab ID becoming out of sync during the render cycle, resulting in an undefined wallet being passed to the wallet interface. The tab synchronization logic was adjusted to keep the active ID in sync during rendering, resolving the issue and allowing the address creation process to complete without triggering an application error.
Next week, we’ll continue internal testing of the Mainsail version, address any issues identified during testing, and work on additional improvements.
Mainsail Weekly Report
This week’s Mainsail work focused on improving API reliability and query performance, reducing unnecessary database operations, and optimizing transaction-pool processing.
Several API improvements were made to handle database load more reliably. The maintenance check now uses the last known maintenance flag instead of waiting for a database connection, preventing busy connection pools from causing unnecessary 503 responses. The check also has a 10-second timeout to avoid getting stuck on an unresponsive connection. PostgreSQL shared memory allocation was increased to support parallel queries, and token whitelist refreshes now delete existing rows rather than truncating the table, avoiding reader lock contention. Validator ranking updates were also optimized to only rewrite records when a validator’s rank or approval status has changed.
Token search and listing endpoints received further performance and correctness improvements. Token name searches now handle special characters such as % and _ literally, support multiple and repeated name parameters, and use case-insensitive matching across different character sets. Short searches also make use of prefix indexes. Token transfers and approvals for address lists now retrieve index keys first and fetch only the records needed for the requested page, improving performance on deeper pages. The /wallets/tokens endpoint was similarly optimized to find tokens through wallet holdings rather than checking every available token.
API validation was tightened by returning 422 responses for unsupported query options that are no longer used by ARK Vault or the SDKs. This included removing obsolete filters and sorting options from block, validator, transaction, vote, and wallet endpoints, while retaining sorting capabilities where they are still required, such as transactions within an individual block. Related cleanup removed unused block and transaction filters, their database query logic, and redundant indexes. The migration rollback logic was also corrected to avoid dropping receipt indexes that are no longer created, and the validator rounds model now uses an explicitly named unique constraint for round heights.
Transaction-pool performance received significant improvements. Re-adding transactions from senders included in a block is now performed in parallel, reducing processing time for 100 senders with 150 transactions from approximately 6 seconds to 400 ms. Batch commit deletion was also optimized, reducing processing time for 15,000 rows from approximately 780 ms to 41 ms. Additional safeguards were introduced to stop reading gossip responses larger than 128 KiB and to stop waiting for peers that take longer than five seconds to respond to transaction broadcasts, helping protect worker memory and prevent slow peers from delaying processing.
Next week, we’ll continue P2P development by replacing Hapi with a custom server.
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.