Status Update

June 25, 2021

Status Updates (June, 2021) > June 25, 2021

DAEDALUS

This week, the team finished implementing the export wallet ICO key feature, continued working on the important upgrade of the Electron dependency, and finalized the conceptual and design work for undelegating a wallet feature.

ADRESTIA

This week, the team shifted their focus to Alonzo/Plutus core features.

Specifically, they started work to update cardano-wallet to Alonzo Node. Also, work continues on streamlining APIs to enable Alonzo/Plutus features, and also on a token minting and burning feature.

Finally, they're still working on resolving a CI flakiness problem.

NETWORKING

This week, the team developed a reviewable version of the P2P switch feature. They also merged a clean connection shutdown PR (connection-manager part), rebased the p2p-master branch on top of multiplexer clean connection shutdown -and tested it in combination-, and worked on different schedules of io-sim.

Finally, the team also worked on general server tests, specifically end-to-end tests of connection manager, inbound governor, and server components.

DEVOPS

This week, the team has been working on db-sync snapshot scripts, and also looking for ways for db-sync high-availability (HA) architecture to reduce downtime during version upgrades to seconds, and be able to scale horizontally.

Finally, they also worked on fixing a build issue in Daedalus caused by Electron and hardware wallet upgrades.

ERC-20 CONVERTER

In the last sprint, the team has been working on integrating the ERC-20 Converter with the new AGIX token, using an improved security vault to store the minting keys. Some additional work has also been required to integrate the logic in the backend with new minting policies. The target date to release the testnet with this revised functionality is early/mid July.

CARDANO DECENTRALIZATION

This week, the team fixed a serialization bug in Plutus scripts and also fixed some edge cases in saturating arithmetic. They also investigated three more performance improvement avenues, added significantly more benchmarks, fixed compilation issues with cross-repo dependencies to the other cardano projects, and completed the first step in updating the PLC parser.

The team also completed several other tasks across many other areas:

Alonzo benchmarking (aka Ouroboros block time budget modeling)

The team worked on improving anomaly reporting in the log analysis and got a qualitative judgement on the adoption/announcement log event inversion prevalence.

Node logging infrastructure rewrite

They completed the initial integration between the cardano-node/trace-dispatcher/trace-forward triplet and cardano-tracer, worked out a design change in connection layout for cardano-tracer/cardano-node, began implementation work, and started porting the resource stats collector from iohk-monitoring-framework.

Transaction generator

The Alonzo tx generation is in progress, and the Tx generator review is almost done (merge into cardano-node is imminent).

cardano-workbench

Alonzo is now supported, the recently added Plutus Tx script successfully submits the Tx against the workbench cluster. The team also worked on design formatting for choices to be included in metadata, and completed implementation of error handling.

GOGUEN

This week, the Plutus team made an enhancement to add 'Data' as a built-in type. They also added redeemers for minting policies and started to investigate how to separate the chain index from the Plutus Application Backend (PAB).

The Marlowe team spent time improving the presentation of contract step cards within Marlowe Run and added functionality to automatically redeem payments made to active wallets. They also extended the payment type to include source accounts and transfers. Additionally, they fixed contract placeholders to work with LocalStorage and added some new property-based tests to ensure that the provided examples do not have errors.

They also completed the implementation of website and playground homepage, (including SEO and social tags), and conducted initial user testing of Marlowe Run, and planned the revision of Marlowe Run based on user testing (onboarding, tool tips, simplified contracts, and explanations.)

For Actus, they continued bug fixing PAM, based on ACTUS Java test suite for Marlowe Run enhancements and bug fixes.

For the Playground, the team added PBT for absence of error/warning in examples, and drafted a plan for extending static analysis to templates.

They also merged several PRs to Fix a problem with the VSCode devcontainer, replace eventful with beam, add cardano-node and cardano-cli to the nix-shell, export serialised PLC programs with envelopes, improved game contract playground example, adding uniswap trace and scripts, implement a more realistic wallet API, reduce our use of row-types, and delete BlockchainActions.

Finally, they made progress on converting our Tx type to cardano-api's Tx type, worked on the Alonzo node "Hello, world" script, and made progress on defining types and the interface for chain index.