Status Updates

October, 2021

Jump to

October 29, 2021

DAEDALUS 

This week, the team worked on adding support for Daedalus ARM builds and improved Daedalus startup sequence. They also worked on the implementation of the over-saturation warning in the Delegation wizard and started preparing for upcoming LedgerJS breaking changes.

ADRESTIA

This week, the team continued working on the integration of the wallet backend with the Plutus Application Backend (PAB). They automated end-to-end tests, optimized fee calculations, and made progress designing a new endpoint to provide details about unbalanced transactions for Daedalus users.

The team also continued working on the design of a new GraphQL component to support light wallets and worked on some node and ledger issues to provide stake pool desirability scores and the pledge status.

NETWORKING

This week, the team worked on network environment simulation tests. They also developed the block propagation delay metric and the block adoption delay trace, restructured the P2P master branch, which is now in review, and worked on several PRs.

DEVOPS

This week, the team worked on the node v.1.31.0 RC and DB Sync v.12 RC deployments and ERC20 converter high availability configuration. They also made updates to Bitte Nomad Nixos container driver.

ERC20 CONVERTER 

This week, the team delivered the ERC20 converter MVP to the internal testnet environment. They are now finalizing its testing, assessing the features, and resolving minor issues. The core functionality of converting SingularityNET (AGIX) tokens between the Ethereum Kovan Test Network and the Cardano Testnet is working correctly. The SingularityNET team are also finalizing testing activities, and we will announce the public testnet release date in due course.

CARDANO DECENTRALIZATION

This week, the team continued working on the ledger state memory usage and deployed the tools that allow ‘dumping’ the ledger state and loading it into memory. They reported memory usage statistics and provided accurate measurements of the size of parts of the ledger state. The team also continued to develop and test compact, in-memory data structures and worked to combine the various stake credential maps to ensure memory savings. They worked on node issues in preparation for its release and are now working on the reward calculation functionality.

The team made progress in integrating certifying and withdrawing scripts into CI. They also made a number of roundtrip tests in the Cardano node repository and updated relevant documentation.

Work is ongoing on Hydra planning; the team worked on the project roadmap and conducted meetings with different projects from the Cardano ecosystem to assess early-adoption use cases. Finally, they worked on the Hydra Head integration test against cardano-node local clusters.

GOGUEN

This week, the Plutus team finalized work on the Plutus repository reorganization, drafted the anonymous data type prototype design in the Plutus Core, and started working on the new specification. They also made more experiments with builtin and compiled lists, improved the TypeScheme inference, completed work on the equivalence proof, and made some benchmarking activities.

The Marlowe team updated Isabelle proofs for division addition, improved Refactoring to separate types in Plutus semantics of Marlowe, and also made changes to Purescript dependencies. Finally, the team investigated several integration scenarios and worked on the cardano-graphql-client proof of concept.

October 22, 2021

DAEDALUS 

This week, the team released Daedalus v.4.4.0 and Daedalus v.4.4.1, bringing support for the upcoming Cardano maintenance release. These include integrations with the latest versions of the cardano-node and the cardano-wallet, a dedicated tokens screen, an updated Electron version, and the possibility to unpair a hardware wallet.

ADRESTIA

This week, the Adrestia team remained focused on the integration of the wallet backend with the Plutus Application Backend (PAB).

Specifically, they worked on end-to-end testing, better test coverage and optimization of the fee calculation. They also started designing a new endpoint to provide details about unbalanced transactions for Daedalus users.

Finally, the team are working on designing a new GraphQL component to support light wallets, the provision of the stake pool desirability scores and pledge status, resolving some blocking issues in the node and ledger, and general bug-fixing.

NETWORKING

This week, the team continued testing the connection manager and outbound governor counters. They also worked on the implementation of IPv6 support, inspected block delay metrics in the Cardano node, and reviewed and updated the P2P master branch in GitHub.

DEVOPS 

This week, the team worked on the preparation for the October maintenance upgrade, which will take place today at 21:44:51 UTC – at the beginning of Epoch 298. This upgrade contains some changes so SPOs and exchanges have been updating their nodes to v.1.30.1.

CARDANO DECENTRALIZATION

This week, the team continued working on the ledger state memory usage and made more in-memory data structure experiments. They also reviewed Cardano DB Sync, made some minor improvements for better performance, and continued working on the separation of the TPraos protocol from the ledger code.

The team fixed some documentation issues with regard to asset names, inspected Windows build issues on GitHub CI, and worked on the Cardano API tests to remove some unnecessary functions and reformat imports. They also investigated cardano-submit-api timeout issues when the mempool is full, and made progress including certifying and withdrawing scripts into CI.

GOGUEN

This week, the Plutus team made some improvements to the local Plutus Playground setup and warning messages. They also continued work on coverage checking for QuickCheck tests and updated public key hashes in the emulator wallet. Finally, they reorganized some of the Plutus repositories.

The Marlowe team was busy working on internal Plutus training, updated dependencies to Purescript v.0.14, and worked on different enhancements in the Plutus repository. They also implemented stock, options, and futures contracts and the arbitrary size integer (de)serialization in Plutus.

October 15, 2021

DAEDALUS

This week, the team prepared for the Daedalus v.4.4.0 release, which brings support for the upcoming Cardano maintenance upgrade. It also includes integrations with the latest versions of the cardano-node and cardano-wallet, a dedicated tokens screen, an updated Electron version, and the facility to unpair a hardware wallet.

ADRESTIA

This week, the Adrestia team remained focused on the integration of the wallet backend with the Plutus Application Backend (PAB).

Specifically, they completed work on transaction balancing and signing endpoints, which are ready for integration. Adjusted coin selection, collateral, and transaction fee calculation features have reached QA stage, and the team is now working on better test coverage and optimization.

Finally, the team are working on designing a new GraphQL component to support Lightwallets, the provision of the stake pool desirability scores and pledge status, and fixing some blocking issues in the node.

NETWORKING

This week, the team worked on different performance metrics and continued reviewing the P2P master branch. They implemented a number of updates and continued working on simulation tests. The team also reviewed the new logging system, the LocalTxMonitor protocol, and updated mini-protocols to use real-time byte size limits. Finally, they assisted in writing testing architecture for the Cardano DB Sync.

DEVOPS

This week, the team continued preparation for the October maintenance upgrade. They also started implementing Nix Flake support for the Cardano wallet, and tested and deployed new explorer stack releases.

ERC20 CONVERTER

The team is making continued progress towards public testnet deployment as they parallel track some additional mainnet optimizations. DevOps has completed the first round of testing on an internal environment and is now addressing some fixes prior to redeployment.

Once the fixes are confirmed, SingularityNET will do additional testing prior to determining a confirmed release date.

In parallel, the team are also working on improvements for mainnet, addressing security threads, and doing some stress testing.

CARDANO DECENTRALIZATION

This week, the team made updates to the CI to include the script context equivalence test, fixed some build issues, and updated dependencies. They also started updating YAML mainnet configuration settings with tests to assert consistency with the JSON version, updated datum values in transactions, and worked on the Plutus withdrawing and certifying script example. The team fixed some issues, tested the MempoolCapacityOverride configuration, and worked on memory improvements. This includes investigating better in-memory data structures, using and writing new tooling to understand how the memory is being used, and working with maps that use keys as stake credentials.

Work is ongoing with regard to Hydra development. The team conducted the planning phase workshop for Hydra and worked on its vision, mission, goals, objectives, impact, and stakeholder maps.

GOGUEN

This week, the Plutus team continued working on coverage checking for QuickCheck tests, primarily endpoint coverage, and validator source location coverage. They also performed a clean-up of Plutus Core components and worked on the PAB, where they improved the chain index and extended the Contract API for querying the status of transaction outputs.

The Marlowe team worked on the Marlowe Run architecture documentation, updated PureScript bridge to PureScript v.0.14, and also fixed some tab reload issues within the Marlowe Playground. Finally, they improved QuickCheck generators for ACTUS contracts along with measuring and discarding invalid tests.

October 8, 2021

DAEDALUS

This week, the team released Daedalus testnet v.4.3.2 and completed the implementation of the dedicated native tokens screen. The team also worked on various UI/UX improvements and preparations for the upcoming integration of the transaction balancing and signing feature.

ADRESTIA

This week, the Adrestia team remained focused on the integration of the wallet backend with the Plutus Application Backend (PAB).

Specifically, they continued development work of the transaction balancing and signing endpoints, which is almost complete. They also confirmed that the adjusted coin selection, collateral, and transaction fee calculation features are ready for testing, and that cardano-rosetta v.1.5.0 and Cardno-GraphQL v.6.0.0 have been released. Currently, the team is working on additional tests coverage and solution tuning.

Finally, the team are working on designing a new GraphQL component to support Lightwallets, and the provision of the stake pool desirability scores and pledge status.

NETWORKING

This week, the team worked on and reviewed different PRs for the P2P master branch. They continued working on the connection manager and inbound governor simulation tests, and resolved occurring issues related to connection acceptance. The team fixed some cardano-node issues, worked on a new tracking component, created the P2P testing plan, and continued reviewing the P2P specification.

DEVOPS 

This week, the team worked on the preparation for the October maintenance upgrade. They completed the implementation of Nix Flake for cardano-addresses and made some additional ERC20 deployments ahead of the public testnet release. Finally, the team scoped out Bitte and Bitte CI work.

CARDANO DECENTRALIZATION

This week, the team worked on the reimplementation of the transaction confirmation modal, removed some irrelevant buildkite properties, and updated Cardano node dependencies. They also worked on the inclusion of the script equivalence test in CI and updated transaction body roundtrip tests. The team merged some community contributions and enhanced a virtual Linux build environment for proper testing.

GOGUEN

This week, the Plutus team added a unit cost model for builtins to make it easier to diagnose inaccuracies in the costing functions. They also worked on implementing a QuickCheck property for checking partial validators.

The Marlowe team fixed an issue with component registration in the Marlowe Playground and made some changes to the Marlowe Run demo prototype. They also reimplemented the transaction confirmation modal and performed some initial work on tuning QuickCheck ACTUS generators for debugging purposes.

October 1, 2021

DAEDALUS 

This week, the team worked on the preparation for the Daedalus testnet 4.3.2 release, which includes cardano-wallet and cardano-node updates. They also continued implementing the dedicated native tokens screen and investigating the Cardano node slow startup issue.

ADRESTIA

This week, the team has been focused on the integration between the wallet backend and the Plutus Application Backend (PAB).

This work involved many elements, including the introduction of new Plutus transaction balancing and signing endpoints, adjusting the coin selection algorithm, determining the contract execution cost in transaction fee, collaterals, and handling datums attached to TxOuts.

Also, the Adrestia team has updated the wallet backend to a version ready to support upcoming hard forks, and they're currently updating Rosetta and GraphQL for the same purpose. New releases are expected to be ready in early October.

Finally, the team are designing a new GraphQL component to support the Lightwallet, and are also working on some improvements and bug fixing in the database layer of the cardano-wallet.

NETWORKING

This week, the team identified and fixed some bugs within the OSX kernel and the cardano-ping connection protocol. They also prepared pruning tests as well as a series of pull requests to be merged into the P2P master branch. The team is now reviewing the connection manager specification and continues working on identifying and prioritizing testing issues.

DEVOPS 

This week, the team worked on the node v.1.30.1 release along with hard fork testing and further planning. They also made some improvements to Bitte CI in terms of automated testing, worked on the Ministry of Education (MOE) deployments, and made some improvements within the ERC20 converter deployment.

CARDANO DECENTRALIZATION

This week, the team worked on the benchmarking of the node v.1.30 release tags, resolved the missing transaction witness issue, and also made some transaction generator updates and integration into the workbench.

They continued working on the node logging infrastructure rewrite reviewing the trace-dispatcher and trace-forward queue management, also rebasing and updating node integration fixes. The team also started implementing the node memory usage measurement benchmark.

Work is ongoing on shell scripts for withdrawing and certifying Plutus scripts; the team also inspected mainnet configuration files, fixed some serialization AssetName issues, and resolved cardano-cli transaction view deserialization error.

Finally, they updated and tested query tips to use new GetChainBlockNo and GetChainPoint local state queries.

GOGUEN

This week, the Plutus team upgraded all dependencies to use node version 1.30. They performed testing of the Plutus Application Backend for a restart scenario and worked on benchmarking. They also published documentation on how to configure the node to connect to any testnet.

The Marlowe team worked on the Marlowe Run demo ahead of its launch at the Cardano Summit 2021 last weekend. The documentation team published some supporting Marlowe Run topics. The team also performed some more refactoring on the ACTUS contracts.