Status Updates

February, 2022

Jump to

February 25, 2022

DAEDALUS 

This week, the team worked on improving the error handling and feedback for users emptying a wallet (if users want to transfer their ada to another wallet, or sell everything, for example).

They also finished a proof-of-concept enabling Google Analytics in Daedalus.

ADRESTIA

This week, the team worked on finalizing a new transaction workflow to mint and burn tokens.

They also worked on DB layer renovation in cardano-wallet, and designing a cardano-js-sdk MVP.

NETWORKING

This week, the team fixed issue one of the IOSimPOR outbound governor failures. They worked on IOSimPOR connection manager simulation, and debugged IOSimPOR issues encountered while working on a previous issue.

They also continued analyzing and monitoring SPO activity on mainnet and carried out a tx process analysis while attempting to reproduce an issue that could be caused by a relay not running chain-sync, block-fetch and tx-submission protocols.

CARDANO DECENTRALIZATION

This week, the team implemented the ledger bridge code and patched cardano-node to run against our integration branch. A review had revealed a couple of bugs, but after patching, the node successfully fetched Byron blocks from \mainnet\ and correctly wrote and restarted from snapshot files using the in-memory back-end.

The team also made the OnDisk test suite pass in the UTXO HD feature branch, using blocks without payload. They also added getTentativeHeader to ChainDB, and managed to run Test.Ouroboros.Storage.LedgerDB.OnDisk tests on master, by generating blocks with payload that preserved existing assumptions.

The Jörmungandr team finalized the incremental tally, worked on rewards distribution for Fund 7, and onboarded a new engineer.

GOGUEN

The Marlowe team set up an e2e test with Cucumber and Playwright and demoed to the team. They also finished the first stage of POSIXTime migration, reverted to manual JSON serialization for MarloweClientInput, and changed the UI to use addresses instead of WalletId or PubKeyHashes.

They also fixed a bug that made contracts not appear in the contracts modal, created a report on feedback from users (in Notion), and presented it to the team.

Finally, they respinned private testnet, updated the Playground in production to match main, and worked on JIRA reorganizing and backlog grooming.

February 18, 2022

DAEDALUS 

This week, the team added more details to the notification about Cardano node activity during wallet synchronization. They also made several UI improvements to the stake pool list, and upgraded the Catalyst voting procedure to be dynamic, which means that it is now possible to implement upgrades without new releases.

NETWORKING

This week, the team continued reviewing IOSimPOR in preparation to merge new changes. They investigated state tracing of TVars and planned their integration with different tests to ensure robustness while IOSim and IOSimPOR testing. The team worked on the first E2E test for network data diffusion and continued monitoring and analyzing mainnet utilization.

Finally, they invited more SPOs to run their nodes with an enabled stake-driven peer-selection on testnet, and finalized connection manager documentation review.

CARDANO DECENTRALIZATION

This week, the team worked on Haskell Nix improvements and made some JavaScript code updates in the Glasgow Haskell Compiler (GHC) repository.

They also prepared Jörmungandr incremental tally implementation for quality assurance checks and finalized rewards changes

The team continued working on the ledger in-memory backend implementation of the new ledger state storage module, which will be able to either keep the ledger state on disk to run on machines with less memory, or to keep it in memory for better performance. They also updated UTXO HD documentation and ran storage tests on blocks with payload to plan further improvements.

The Hydra team presented a demo of Hydra v.0.3.0 and created a Cardano improvement proposal (CIP-36) to add new Plutus built-ins. They also worked on distinguishing Hydra Heads on-chain using tokens in Hydra Head Plutus scripts.

GOGUEN

The Plutus team added support to the ‘plutus-ledger-api' for Cardano Improvement Proposals (CIPs) 31-33, which includes updates to reference inputs, inline datums, and reference scripts. They also updated the size function for the bytestring type and worked on syntax updates to parsers to support lists, pairs, and data. Finally, they made updates to signature verification and continued work on benchmarking.

The Marlowe team added functionality to download contracts in JSON format and to show the wallet sync status in the Marlowe Playground. They also fixed serialization for the ContractInstance and some issues associated with follower contracts.

February 11, 2022

DAEDALUS 

This week, the team fixed several UI issues within the delegation page, testnet rewards dialog, and diagnostic screen, which now shows more accurate information about hardware specifications. Finally, they improved navigation settings using keyboard shortcuts.

ADRESTIA

This week, the team released versions of cardano-graphQL and cardano-rosetta compatible with node 1.33.x. They also worked on finalizing a new transaction workflow, the DB layer renovation in cardano-wallet, and continued designing a cardano-js-sdk MVP.

NETWORKING

This week, the team continued reviewing IOSimPOR. Specifically, they focused on the partial order reduction algorithm for IOSim. They rebased IOSimPOR on top of the current master branch, made some cardano-node updates, and finalized the timeouts testing.

Finally, the team updated chain-sync documentation addressing some issues, and are in the process of investigating mainnet behavior during the heavy load period.

CARDANO DECENTRALIZATION

This week, the team continued working on UTXO HD property-based tests, elaborated a design for exercising the UTXO HD backend, and made more improvements to the process of its integration with consensus. Additionally, they sketched an initial implementation for the transaction addition logic.

The Hydra team released Hydra v.0.3.0, which implements ​​on-chain verification of the Hydra Head lifecycle, and updated the Hydra Head implementation roadmap. They also updated upcoming features within a backlog, created an acceptance test for multiple Hydra Heads support on-chain, and documented Hydra direct contract mutation testing. Finally, they refactored cardano-api use cases into a hydra-cardano-api package.

GOGUEN

This week, the Plutus team made some improvements to the area of decoding and overflows. They also updated the core Plutus specification and fixed a merge conflict in their tests. Finally, they worked on some optimizations and metatheory improvements.

The Marlowe team worked on metadata improvements in the Marlowe Playground. They also worked on documentation and held a planning session with the education team for the first cohort of the Marlowe Pioneers Program which is coming soon.

February 4, 2022

DAEDALUS 

This week, the team finalized Daedalus v.4.8.0 release changes, including a note for users using computers with less than 16GB of RAM and an option to enable the Runtime System (RTS) flags that optimize memory usage at the cost of increased sync time.

The team also worked on the implementation of rewards history, unspent rewards display, JS SDK development, and analytics.

Finally, they continued working on a range of user interface improvements.

ADRESTIA

This week, the team worked on finalizing a new transaction workflow by adding support for staking transactions on a transaction construction step. Also, the team is working on performance improvements and optimization of the DB layer in cardano-wallet, and designing a cardano-js-sdk MVP.

NETWORKING

This week, the team identified and fixed an outbound governor bug and continued working on timeout tests and diffusion simulations. They wrote transformer instances for various io-classes, and prepared a pull request to update cardano-node dependencies along with several P2P fixes based on node v.1.33. Finally, the team finished an initial review of IOSimPOR - a version of the IO simulator that can detect and reverse races.

CARDANO DECENTRALIZATION

This week, the team continued working on performance optimizations and ledger enhancements. They proposed the next parameter update to increase block size by a further 8KB (72KB to 80KB). In addition, they triggered another update proposal to increase Plutus script memory units per transaction on the Cardano mainnet from the current 12.5 million to 14 million. Both changes will take effect at the boundary of epoch 319.

The team also implemented CDDL flag within cardano-ci and made a series of improvements to CLI functionality.

The Hydra team completed work on a first version of on-chain validators for the full Head life cycle with the latest pre-release 0.3.0. Also, they published the engineering roadmap for Hydra Head and a new blog post explaining the Hydra Head protocol as the first step towards the full Hydra vision.

GOGUEN

This week, the Plutus team developed a new experimental PAB command line interface tool, which is available in the Plutus-apps repository. This tool offers developers a simpler way to get started with project creation using a pre-configured template from the terminal, rather than manually installing and configuring it. They also worked on benchmarking experiments and validations, as well as updates to their backlog and product strategy.

The Marlowe team finished their work on contract merkleization and worked on the conversion of slots to POSIX time while creating transactions. They also started scoping the features of Marlowe Market and worked on documentation.