Status Updates

March, 2021

Jump to

March 26, 2021

DAEDALUS

This week, the team added support for Trezor passphrase usage and made some Catalyst-related UI/UX improvements to the registration process. They also implemented a range of new features, including a display of the reward address, a stake pool filtering option, and improved performance of the stake pool list rendering.

ADRESTIA

This week, the team worked on native tokens metadata availability, CI, and test suite improvements. Specifically, they worked on end-to-end testing of native token metadata, including metadata submitter, cardano-graphql, and cardano-explorer. They also updated cardano-wallet to ghc-8.10.x, continued implementing CI and test suite improvements to make QA easier, faster, better, and finally, they continued development work of multisig features.

NETWORKING

This week, the team worked on the support for local root peers and enhanced the simulator’s MonadFix and Eq state instances for various transactional variables. They contributed to the release of node version 1.26.1.

DEVOPS

This week, the DEVOPS team respun the devnet environments (EVM/KEVM/IELE) with unique network IDs, spent some time undockerizing and updating components for devnet environments to enable simpler deployments, and switched from haproxy to traefik for devnet and catalyst environments.

They also began testing cardano-node version 1.26 at the 48 hour mark on mainnet, completed Nix builds for the ERC20 converter, and started bitte deployment for testing.

The team did an initial dry-run for tooling and setup of the Yoroi catalyst snapshot round, worked on improvements for Cardano's metadata server, in preparation of its final release.

Finally, the team updated voting tools for fund4 (added absolute slot number and uses hash of metadata instead raw cbor as signature payload), and worked on multi-node vertical scaling of relays testing on the mainnet.

CARDANO DECENTRALIZATION

This week, the team made progress implementing new Alonzo rules in the ledger, which involved generalization of existing Shelley code and work on the new serialization support for Alonzo.

The team also worked on the reward audit tool, supported the node version 1.26.1 release with large-state AWS benchmarks (which helps to track performance issues), and worked on issue resolution.

Work is ongoing within the node logging reimplementation: the team implemented EKG forwarding tests, progressed with node integration with the trace-forwarder, reviewed new logging API documentation, and started the log forwarding protocol design.

The team also added large-state genesis support to the cardano-node, which means that node developers can now start a local cluster within a nix-shell large state and use the port staggering scheme, which supports automated QA tests.

Finally, the team planned the collaboration process with QA in relation to cross-platform node synchronization benchmarking.

GOGUEN

This week, the Plutus team worked with Quviq on contract testing. They also reduced the node client log output and simplified parameterized script instances.

The Marlowe team worked on the implementation of running contracts in the Marlowe Dashboard client and improved contract semantics. They also started working on the export of contracts as Mermaid graphs, and fixed some CSS issues in the Marlowe Playground. Last, but not least, they worked on styling for the Marlowe Suite UI elements.

March 19, 2021

DAEDALUS

This week, the team released Daedalus version 4.0.2-FC3, which introduces native token support for hardware wallets, and enables users to view their hardware wallet public keys and spent reward balances.

The team also worked on transaction history CSV export improvements, enabled a local-cluster development environment, and added a feature of pasting wallet recovery phrases.

Finally, the team worked on a new screen informing that Cardano is fully decentralized.

ADRESTIA

This week, the Adrestia team continued working on post-Mary hard fork improvements and hotfixes.

Specifically, they focused on CI and test suite improvements to make QA easier, faster, and better. They also continued developing multisig features, and implemented some bug fixes and quality improvements.

NETWORKING

This week, the team continued working on the P2P functionality, connection manager testing, and peer connection establishment. They also fixed some timeout properties in the Handshake protocol.

DEVOPS

This week, the team tested and deployed node version 1.26.0, converted KEVM deployment tools not to require a custom Docker container, and made some metadata server improvements.

Finally, the team started implementing a slot attribute for Project Catalyst to enable metadata hashing prior to signing.

CARDANO DECENTRALIZATION

This week, the team started node benchmarking activities by implementing a deployment update, and isolating and fixing some networking issues. They continued working on the node logging design: implemented and examined the EKG metric forwarding package, completed inline documentation for the trace-forwarder, and started its integration with the node.

The team also made progress with the local-cluster and other AWS deployment improvements, merged JSON-based transaction generator scripts, and started extending the scripting machinery to allow expressing cross-era transitions.

Finally, work is ongoing in preparation for the Alonzo development update, which involves Nix configuration changes to progress with Alonzo stub types.

GOGUEN

This week, the Plutus team added support for non-UTF-8 token names, edited the plutus-use-cases module names to make them more concise, and added a slot to datetime converters.

The Marlowe team refactored the Marlowe.Extended module into separate modules and added metadata to the Marlowe editor in the Marlowe Playground. They also worked on the contract template library and Marlowe Suite user interface elements.

March 12, 2021

DAEDALUS

This week, the team worked on the hardware wallet features to enable native token transactions, implemented the ‘View wallet’s public key’ feature, and worked on the stake pool tile view to reflect potential rewards instead of ranking. Finally, the team updated the application dialogs’ UI/UX and fixed some minor design issues.

ADRESTIA

This week, the Adrestia team worked on post-Mary hard fork improvements and hotfixes, including CI and test suite improvements to make QA easier, faster, and better. They also implemented several bug fixes and quality improvements, and continued developing multisig features.

NETWORKING

This week, the team continued working on the P2P governor functionality establishing local root peer connections and progressing with connection manager tests. They also implemented the addTime right associative and added Timeout properties to the Handshake protocol, which fixes some regression issues.

DEVOPS

This week, the team performed a number of cardano-ops improvements in terms of node service to support better scalability, preliminary logging to support log segregation and history, and metadata server enhancements. Finally, they worked on operations tooling for UTxO management.

CARDANO DECENTRALIZATION

This week, the team continued implementing Alonzo rules with the protocol to support upcoming smart contract functionality. They finalized the work scope that enables to safely hash the protocol parameters within Alonzo and started progress on further ledger code integration with the consensus. This involved bug fixes, Alonzo property tests planning, work on the UTxO properties, and preparation of the audit report.

The team progressed with the logging infrastructure redesign working on human-friendly data presentation, implementing inline trace documentation in the trace-dispatcher, prototyping EKG metric forwarding, and finalizing the typed-protocols-based implementation sketch.

The team also refactored Supervisord local cluster configuration and started moving single-shot genesis from the cardano-ops, coordinating these activities with quality assurance.

Finally, they performed the benchmarking of JSON-based specification in the transaction generator, and performed a set of benchmark activities to establish a new baseline with larger data set sizes to accommodate for mainnet growth.

GOGUEN

This week, the Plutus team added tutorials to the Playground deployment and increased the request rate limit and memory for static pages. They also added some new scripts to the ledger API module.

The Marlowe team worked on contract implementation elements for the Marlowe Suite. They also added a metadata tab to the Marlowe editor in the Playground which adds metadata to the global state and saves it when publishing gists and local storage.

March 5, 2021

DAEDALUS

This week, the team released Daedalus Testnet version 4.0.0-RC1 and Daedalus Flight Mainnet version 4.0.0-FC1. These releases introduce multi-asset support, which enables users to send and receive native tokens on Cardano, and also include fixes to allow rewards withdrawal from hardware wallets.

ADRESTIA

This week, the team worked on post-Mary hard fork improvements and hotfixes.

Specifically, they focused on enabling withdrawals and metadata support for standalone coin-selection endpoint, metadata-related improvements (including renaming of Asset Metadata acronym to the ticker), development of multisig features, and bug fixes and quality improvements.

NETWORKING

This week, the team worked on the connection schedule generator while testing the connection manager, evaluated the P2P governor behavior by setting up nodes across various geographical locations, and continued working on churn (some network connectivity functionality) and local root peer connections.

DEVOPS

This week, the team updated the ledger protocol to support Mary native tokens functionality on Mainnet, worked on improvements to the metadata server, and tested multiple relay nodes within a single sharing port for the vertical scaling functionality.

The team made Bitte improvements for Catalyst (which simplifies its deployment without requiring Nix usage), and for vault – to allow it to store the terraform state instead of using the terraform cloud.

Finally, the team worked on the KEVM/EVM devnets, which are now fully functional and ready for development use, and fixed Catalyst snapshots to ensure better performance.

CARDANO DECENTRALIZATION

This week, the team finalized incremental reward calculations, worked on some principal Alonzo rules to support code applicability within all development themes, and reviewed MIR certificates' functionality of transferring funds between reserves and the treasury. They also investigated Mary-to-Alonzo transition dependencies, and continued working on the ouroboros-network and ouroboros-consensus package boundaries.

The team also completed Allegra property fixes and proceeded with the logging infrastructure re-implementation, which involved the implementation of EKG passthrough in the RTView, design of the EKG metrics prototype, and implementation of an adaptive message frequency limiting in the trace-dispatcher prototype, while also making progress on its inline trace documentation.

Finally, the team worked on benchmarking automation, updating the generator to the latest version of the node, and transitioning declarative JSON-based generator scenarios. They implemented a more development-friendly Cabal-based mode within the Supervisord local cluster, migrated topology generation from the cardano-ops repository to the Supervisord cluster, and performed the ledger incremental computations benchmarking now waiting for node integration.

GOGUEN

This week, the Plutus team began working on a multi-user wallet and signing process, added some new scripts to the ledger API module, and performed organizational housekeeping within Plutus Core.

The Marlowe team worked on the Marlowe Marketplace Client and continued working on new designs for the Marlowe Suite user interface elements. They also fixed some visual issues while using Blockly.