-
Notifications
You must be signed in to change notification settings - Fork 51
refactor: update DMQ message structure #2672
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Test Results 4 files ±0 164 suites ±0 23m 5s ⏱️ +30s Results for commit fee0ce1. ± Comparison against base commit 27753f4. This pull request removes 1 and adds 2 tests. Note that renamed tests count towards both.♻️ This comment has been updated with latest results. |
fcfaa19 to
cae7150
Compare
cae7150 to
5c6966f
Compare
ff0aa40 to
9c8f847
Compare
9c8f847 to
8936033
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Refactors the DMQ (Decentralized Message Queue) implementation to support the new structure of the DmqMsg message in pallas, including updates to KES signature implementation and message expiration handling.
- Updates the
DmqMsgstructure to use new pallas message format with separated payload and signature components - Replaces block-based TTL with timestamp-based message expiration using
expires_atfield - Modifies operational certificate handling to support separate cold verification key
Reviewed Changes
Copilot reviewed 18 out of 19 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| mithril-signer/src/runtime/runner.rs | Updates OpCert field access to use getter method |
| mithril-common/src/test/crypto_helper/cardano/kes/signer_fake.rs | Enhances fake KES signer to track signed messages for testing |
| mithril-common/src/crypto_helper/types/protocol_key.rs | Adds method to consume ProtocolKey and return inner key |
| mithril-common/src/crypto_helper/mod.rs | Exports new OpCertWithoutColdVerificationKey type |
| mithril-common/src/crypto_helper/codec/binary.rs | Adds binary codec support for OpCertWithoutColdVerificationKey |
| mithril-common/src/crypto_helper/cardano/opcert.rs | Restructures OpCert to separate cold verification key and adds getter methods |
| mithril-common/src/crypto_helper/cardano/key_certification.rs | Updates OpCert field access to use getter method |
| mithril-common/src/crypto_helper/cardano/kes/verifier_standard.rs | Updates OpCert field access to use getter methods |
| mithril-aggregator/src/services/signer_registration/verifier.rs | Updates OpCert field access to use getter method |
| internal/mithril-dmq/src/publisher/server/pallas.rs | Updates test to use new DmqMsg structure with separated payload |
| internal/mithril-dmq/src/model/timestamp.rs | Adds timestamp provider abstraction for Unix timestamps |
| internal/mithril-dmq/src/model/mod.rs | Exports new timestamp module |
| internal/mithril-dmq/src/model/message.rs | Updates tests to use new DmqMsg structure |
| internal/mithril-dmq/src/model/builder.rs | Refactors message builder to use timestamp-based expiration and new signing approach |
| internal/mithril-dmq/src/consumer/server/queue.rs | Implements message expiration based on timestamps and adds queue cleaning logic |
| internal/mithril-dmq/src/consumer/server/pallas.rs | Updates tests to use new DmqMsg structure |
| internal/mithril-dmq/src/consumer/client/pallas.rs | Updates client to parse separated operational certificate and cold verification key |
| internal/mithril-dmq/Cargo.toml | Updates pallas dependencies to use updated branch with new DMQ message structure |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
8936033 to
6607e7e
Compare
6607e7e to
83a40a4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
83a40a4 to
6794796
Compare
6794796 to
0f1382b
Compare
0f1382b to
e6c6573
Compare
Following the move of operational certificate and cold verification out of the signed payload.
Following the move of operational certificate and cold verification out of the signed payload.
Following the move of operational certificate and cold verification out of the signed payload.
Following the move of operational certificate and cold verification out of the signed payload.
Following the move of operational certificate and cold verification out of the signed payload.
…d verification key
… cold verification key
…d verification key
…verification key in message
* mithril-dmq from `0.1.10` to `0.1.11` * mithril-aggregator from `0.7.85` to `0.7.86` * mithril-common from `0.6.18` to `0.6.19` * mithril-signer from `0.2.269` to `0.2.270`
e6c6573 to
fee0ce1
Compare
Content
This PR includes the update of the DMQ implementation to:
DmqMsgmessage in pallasexpires_atfieldPre-submit checklist
Issue(s)
Relates to #2670