-
Notifications
You must be signed in to change notification settings - Fork 52
fix: DMQ publisher error on rejected local submission response #2972
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
base: main
Are you sure you want to change the base?
fix: DMQ publisher error on rejected local submission response #2972
Conversation
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
Fixes DMQ publisher connection handling and aligns DMQ rejection encoding with an updated Pallas API to prevent long-lived connections when local submission responses are rejected.
Changes:
- Update DMQ server rejected-response construction to use
DmqMsgRejectReason(new Pallas API). - Adjust DMQ publisher client flow around receiving the submit response and sending
Done. - Switch
pallas-*dependencies to a git branch to pick up the CBOR-encoding fix.
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| internal/mithril-dmq/src/publisher/server/pallas.rs | Updates rejected response payload to the new DmqMsgRejectReason-based structure. |
| internal/mithril-dmq/src/publisher/client/pallas.rs | Refactors response handling / graceful termination logic and updates tests for new reject reason type. |
| internal/mithril-dmq/Cargo.toml | Switches pallas-codec / pallas-network from crates.io to a git branch dependency. |
| Cargo.lock | Locks new git-sourced Pallas versions and their transitive dependency changes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| #pallas-codec = { version = "0.34.0" } | ||
| #pallas-network = { version = "0.34.0" } | ||
| pallas-codec = { git = "https://github.com/cardano-scaling/pallas.git", branch = "jpraynaud/fix-dmq-local-submission" } | ||
| pallas-network = { git = "https://github.com/cardano-scaling/pallas.git", branch = "jpraynaud/fix-dmq-local-submission" } |
Copilot
AI
Jan 30, 2026
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.
pallas-codec / pallas-network are switched to a moving git branch dependency. This makes builds non-reproducible over time (branch can change) and bypasses crates.io versioning; it also complicates supply-chain auditing. Prefer pinning to an immutable rev (commit) or a released/tagged version, or use a [patch.crates-io] override at the workspace level if this is a temporary hotfix. Also consider removing the commented-out dependency lines to avoid configuration drift.
| #pallas-codec = { version = "0.34.0" } | |
| #pallas-network = { version = "0.34.0" } | |
| pallas-codec = { git = "https://github.com/cardano-scaling/pallas.git", branch = "jpraynaud/fix-dmq-local-submission" } | |
| pallas-network = { git = "https://github.com/cardano-scaling/pallas.git", branch = "jpraynaud/fix-dmq-local-submission" } | |
| pallas-codec = { git = "https://github.com/cardano-scaling/pallas.git", rev = "0123456789abcdef0123456789abcdef01234567" } | |
| pallas-network = { git = "https://github.com/cardano-scaling/pallas.git", rev = "0123456789abcdef0123456789abcdef01234567" } |
turmelclem
left a comment
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 👍
Content
This PR includes a fix to:
Pre-submit checklist
Issue(s)
Relates to #2961