Skip to content

Weekly development report as of 2023-03-24

Weekly development report as of 2023-03-24

CORE TECHNOLOGY

Last week, the networking team released node v.1.35.6, which brings Dynamic P2P networking to mainnet. Dynamic P2P enables SPO relays to automatically connect to each other, replacing the current manual configuration process. See this blog post for more details.

The ledger team made progress on the Conway era implementation by expanding the ledger API and including multiple governance features. They also kept working on the specification and Haskell implementation, continued integrating ledger packages into cardano-node, and addressed technical debt.

The consensus team continued working on the UTXO-HD prototype refactoring and Genesis design and testing. They also extracted the fs-sim package, which provides a file-system abstraction layer that can be used for testing and simulation. This makes the consensus code base smaller while providing a package that the community can reuse and contribute to. 

Finally, they fixed a failing property test related to iterators and continued working on mempool and VRF improvements.

As always, see this technical development report for more details from different teams.

WALLETS AND SERVICES 

This week, the Daedalus team worked on the application’s starting screen improvements to show a more precise sync progress with decimals. 

Work is ongoing on the Lace desktop development. The team improved the DApp Connector’s browser navigation and transaction drawer logic and fixed minor UI issues to improve the overall user experience. 

Finally, they finalized and implemented a simple onboarding mechanism for the local node feature.

The Adrestia team worked on extending the multi-signature feature with delegation functionality in cardano-wallet. They also worked on extracting the transaction balancing library and did some refactoring of the DBLayer to improve performance and memory usage. 

Finally, they continued working on performance optimization of cardano-services in cardano-js-sdk.

SMART CONTRACTS

The Marlowe team fixed the inclusion of the stake address in the Marlowe address, removed trace statements from the Marlowe validator, and assessed options for preventing double satisfaction. The team also assessed various conditions in the Marlowe semantics validator: adding a check for the positivity of accounts for the output state, guarding against duplicate accounts, guarding balance postcondition, and guarding against negative deposits in the validator. They also documented the rationale for allowing multiple outputs to an address, fixed Eq instance for ReduceWarning, added missing specification tests for validator semantics, and addressed minor issues related to the validator and its spec.

Finally, they implemented a transaction detail view for Marlowe Explorer, displayed ada amounts in a more readable way, and implemented a paginated index of all Marlowe contracts.

BASHO (SCALING)

The Hydra team continued working on hydra-node mainnet compatibility, added a golden test suite for Hydra Plutus scripts and some detection of hydra-node misconfiguration, established a mainnet limit of 100 ada per commit (for now), and addressed smaller tasks in preparation for the mainnet beta release. 

The Mithril team continued implementing the migration of the aggregator stores to a relational design and completed the adaptation and migration of the stake pool store. They also worked on refactoring the multi-signer to enable it to sign multiple concurrent messages. Additionally, they finished implementing the automatic handling of API versions switch at era transition.

Finally, the team successfully completed the tests to create certificates and snapshots on a network running on the Cardano mainnet and fixed issues related to deadlocks on the SQLite connections. 

GOVERNANCE 

If you haven’t had a chance to review the updates to CIP-1694, IOG encourages you to! You can contribute directly to GitHub and continue the conversation on various community channels.

Following on from the earlier CIP-1694 workshop in Colorado, IOG would like to invite all community members to a Zoom conversation on March 30. It will be an opportunity to recap the workshop with attendees, hear more about CIP-1694, as well as discuss future workshops and the next steps towards the age of Voltaire. RSVP here if you’d like to join. 

This week in Project Catalyst, the team introduced a proposed iteration for the community assessment stage coming into Fund10. You can rewatch the segment from the main town hall here. There will be more information shared in the coming weeks, make sure to stay tuned and register your attendance for the upcoming town hall.

Also, the Special Voting Event introduced during this week’s 360 segment is coming soon. More details will be announced soon, but you can register via the usual voter registration in Catalyst to participate in the upcoming voting event.

Lastly, if you’re trying to stay up to date with everything that's happening in Project Catalyst, bookmark the past issues of the weekly newsletter. Check it out here.

コアテクノロジー

ネットワーキングチームは、ダイナミックP2Pネットワーキングをメインネットにもたらすノードv. 1.35.6をリリースしました。ダイナミックP2Pを使用すると、SPOリレーが自動的に相互接続され、現在の手動設定プロセスが置き換えられます。詳しくはこちらのブログ記事をご覧ください。

台帳チームは、台帳APIを拡張し、複数のガバナンス機能を含めるなど、Conway期の実装を進めました。仕様とHaskell実装に関する作業、Cardanoノードへ台帳パッケージを統合する作業を続け、技術債務に対処しました。

コンセンサスチームは、UTXO-HDプロトタイプのリファクタリング、およびGenesisの設計とテストに引き続き取り組みました。テストやシミュレーションに使用できるファイルシステム抽象化レイヤーを提供するfs-simパッケージの抽出も行いました。これによりコンセンサスコードベースが小さくなり、コミュニティが再利用して貢献できるパッケージが提供されます。 

失敗したイテレーター関連のプロパティテストを修正し、メモリープールとVRFの改善への取り組みを続けました。

通常通り、チーム別の詳細はこちらの技術開発レポートをご覧ください。

ウォレットとサービス 

Daedalusチームは、小数を使用して同期の進行状況表示の正確性を高めるという、アプリケーション起動画面の改良に取り組みました。 

Laceデスクトップの開発作業は進行中です。DAppコネクターのブラウザーナビゲーションとトランザクションドロワーロジックを改善し、ユーザーエクスペリエンス全体を向上させるために、UIの軽微な不具合を修正しました。 

ローカルノード機能の簡単なオンボーディングメカニズムを完成させて実装しました。

Adrestiaチームは、cardano-walletのマルチシグ機能を委任機能で拡張する作業に取り組みました。トランザクション残高ライブラリーの抽出作業、パフォーマンスとメモリー使用量を改善するためのDBLayerのリファクタリングも行いました。 

cardano-js-sdkにおけるcardano-servicesのパフォーマンス最適化作業を続けました。

スマートコントラクト

Marloweチームは、Marloweアドレスにステークアドレスが含まれていることを修正し、Marloweバリデーターからトレースステートメントを削除し、二重満足を防ぐためのオプションを評価しました。アウトプットステータスに対するアカウントのポジティブ性のチェックの追加、重複アカウントに対する保護、残高事後条件の保護、バリデーターの負のデポジットに対する保護など、Marloweセマンティクスバリデーターのさまざまな条件を評価しました。1つのアドレスへ複数のアウトプットを許可する論理的根拠を文書化し、ReduceWarningのEqインスタンスを修正し、バリデーターセマンティクスの不足している仕様テストを追加し、バリデーターとその仕様に関する軽微な問題を解決しました。

Marloweエクスプローラーにトランザクション詳細ビューを実装し、ADAの金額表示を読みやすくし、すべてのMarloweコントラクトのページ分割インデックスを実装しました。

Basho( スケーリング)

Hydraチームは、引き続きhydra-nodeのメインネット互換性に取り組み、Hydra Plutusスクリプトのゴールデンテストスイートとhydra-nodeの設定ミス検出を追加し、コミットごとの100ADAのメインネット制限を確立し(暫定)、メインネットベータリリースに向けて小規模なタスクに対処しました。 

Mithrilチームは、アグリゲーターストアのリレーショナル設計への移行の実装を続け、ステークプールストアの適応と移行を完了しました。複数の同時メッセージに署名できるように、マルチ署名者のリファクタリングにも取り組みました。開発期移行時のAPIバージョン切り替えの自動処理の実装も完了しました。

Cardanoメインネットで実行されているネットワーク上で証明書とスナップショットの作成テストを完了し、SQLite接続のデッドロックに関する不具合を修正しました。 

ガバナンス 

CIP-1694の更新を未確認の場合は、ぜひ実行してください。GitHubに直接貢献し、さまざまなコミュニティチャネルで会話を続けることができます。

コロラド州で開催されたCIP-1694ワークショップに続き、IOGでは3月30日のZoomミーティングにコミュニティメンバー全員の参加を希望しています。参加者とともにワークショップを振り返り、CIP-1694についての詳細を聞き、ヴォルテール期に向け今後のワークショップと次のステップについて話し合う機会となります。参加をご希望の場合は、こちらからお申込みください。 

今週のProject Catalystでは、Fund10に導入されるコミュニティ評価段階のイテレーション案が紹介されました。ここで、メインタウンホールからセグメントを再視聴できます。今後数週間のうちに、さらに情報が更新される予定です。今後のタウンホールへの参加登録をしてください。

今週の360セグメントで紹介されたスペシャル投票イベント(SVE)も近日中に開催されます。詳細は近日中に発表されますが、Catalystの通常の有権者登録から登録し、次の投票イベントに参加することができます。

週刊ニュースレターの過去の号をブックマークに登録して、Project Catalystの最新情報を入手してください。詳しくは、こちらをご覧ください。