Status Update

January 24, 2020

Status Updates (January, 2020) > January 24, 2020

WEEKLY DEVELOPMENT REPORT

Daedalus

Wallet

This week the team improved the instructions for users on the wallet ‘Settings’ screen and during the ‘Delete Wallet’ dialog. The process of validating a paper wallet recovery phrase was also optimized, as well as custom scrollbars being added to the UI. Elsewhere, the work on transaction date filtering on the ‘Transactions’ screen is in the final stage of QA and review.

In the scope of regular maintenance tasks, the team improved the display of the switch, radio-button, and checkbox components, and continued working on adding more automated tests for Shelley features.

App Platform

There is no update this week since the team was helping out with development work for Daedalus and the Cardano Explorer.

Cardano Explorer

This week the team worked on polishing a few small UI issues and preparing for the final QA and testing phase of the upcoming Cardano Explorer Byron release. Work has also started on modeling the Shelley data structure in Cardano GraphQL, which will enable the team to work with mocked GraphQL results and continue with the Explorer development.

Wallet backend

The team spent time this week working on improved statistics and ranking for stake pools, as well as performing an internal audit of the wallet API. The results of the audit were positive, and the areas highlighted for improvement were already covered by backlog work items that the team was planning on doing anyway! The team also focused on improving stability and resilience this week to better support future releases of Daedalus.

Networking

This week the networking team started working on a connection manager: a component to connect peer-to-peer governors (which drive gossiping) with a server that accepts connections. The team also spotted and fixed a performance issue in the outgoing part of the mux-network.

Thanks to this week’s work, the network now uses fixed-size service data units (SDUs) and can group multiple messages in a single SDU. The team has also started implementing a standard API for Berkeley sockets and Windows named pipes, after implementing interruptible Windows I/O operations.

DevOps

This week the team has been working on performance improvements for the upcoming 1.4.0 node release. Next week the team plans to do a full end-to-end test of a cluster upgrade from the legacy Cardano codebase to the new Cardano node.

In terms of the explorer, the team has improved the docker image so runit processes can be stopped and started, as well as adding a transaction endpoint into the docker image that can be used to send raw transactions to the network.

Cardano Decentralization

This week the team finished work on a multi-signature generator and associated tests, allowing for rapid and reliable testing of all kinds of multi-signature transactions and scenarios. The team also addressed a lot of small issues that were discovered while formalizing and proving the properties of the ledger in Isabelle, which is an automated theorem prover. Finally, Shelley ledger states are now defined in the abstract specification as well as implemented and used in the executable specification.

Goguen

This week the team researched how to implement spending policies for currencies where conditions are imposed when spending that currency. They also studied how smart contracts should interact with rollbacks.

The team added an emulator trace within the Plutus Playground to improve the simulation feedback. They also started to investigate which interfaces can be used from the wallet backend integration, as well as making improvements to package documentation.

The Marlowe team reviewed the multicurrency support content within the Marlowe tutorial. They also worked on how to generate the user interface for Marlowe contracts.