[Active] AE Maintenance (Weeks 45-46, 2024)

Application Status

Status: Active

Hello everyone,

We hope you’re all doing well! Over the past two weeks, our team has been hard at work on various improvements. We’re excited to share with you what we’ve achieved.

Weeks 45-46 (November 4 - November 17)


Valentin Atanasov

In the past couple of weeks, we’ve focused on enhancing the stability of our system. We fixed integration tests to improve reliability and addressed an auction bid rendering issue. We also added active accounts statistics to provide better insights into network activity and fixed a DEX regression to enhance trading functionality.

Mihail Dobrev

We’ve been busy ensuring that the MDW sync persists epoch information and creating an endpoint to access this data. We’ve added more details for the epochs and fixed a bug where the claim calls endpoint wasn’t handling auctions correctly.

We’ve also created a helper script to create pins from the HyperChain to the parent chain and populated the local HyperChain and parent chain with data. We’re working on detecting pins during syncing and have fixed the /stats endpoint on HyperChains, changing miners_count to validators_count for clarity. Additionally, we’re exploring ways to retrieve extra validator data in MDW and have updated the documentation for transactions.

Dincho Todorov

We’ve started working on a load-testing framework that will provide more accurate information about blockchain performance in different configuration modes and consensus mechanisms. Our focus has been on load testing, and we’ve completed the tests for Proof-of-Work (PoW).

Justin Mitchell

Our work on the voting mechanism is progressing well. After rebasing and fixing tests, the voting tests are now passing. Next, we’ll implement finalization and store votes on the chain, which will enhance the consensus process.

Hans Svensson

Over the past two weeks, we’ve made several improvements. Drafted a PR for HCVoteTx, which is used for gossiping and distributing vote information in HyperChains. Ensured there are no errors in logs during HyperChain tests to improve reliability. Added logic and tests to ensure that pinning can only be performed by the last leader of the epoch, enhancing security.

Relaxed checks for “mining” related to micro-blocks in HyperChain tests to allow for smoother testing. Troubleshoot and fixed an issue where multiple micro-blocks could be produced in a HyperChain generation. Corrected a syntax error in the offline command to prevent user confusion.

Thomas Arts

We’ve been working on improving the HyperChain contract. Cleaned up the get_state function to improve code clarity. Together with Hans, ensured that only the last leader can pin in the HyperChain contract.

Måns af Klercker

Our efforts have been focused on pinning including an automated pinning agent to streamline the pinning process.

Continued improving pin rewards to incentivize participation. You can check the details.

After rebasing and fixing tests, performed further testing on the pinning agent and supported the MDW team.

Dmytro Lytovchenko

We’ve continued our work on test suites. Started the slashable offenses test suite, covering scenarios like double spending, double voting, and ignoring votes. Since the code we’re testing isn’t fully implemented yet, we decided to focus on implementing fixes for the test cases before creating new tests.

We have also resolved an issue with improper invalidation of the contract cache. Updated the test setup code in our branch from the latest master, and worked on implementing the missing code for the production suite, including updates to the conductor and consensus modules to handle late block production.

Richard Carlsson

We’ve been troubleshooting test suite problems that were timing-related. By increasing time slot lengths, we’ve managed to get the tests passing for now. We identified complications due to multiple validators running in a single node, which meant cached data couldn’t be assumed to have a single writer or reader. We’ve also figured out how to properly handle the boundary between epochs.

We revisited an old PR aimed at fixing the log directory configuration and the setup start order but encountered unexpected test suite issues. Additionally, we’ve been working on computing HyperChain time slots and determining how to store and retrieve the start times for epochs so they can be fetched later.


Thank you for your continued support and interest in our work. We’ll keep you updated on our progress, and we’re always grateful for your feedback!

2 Likes