Skip to content

Fixed various issues#61

Merged
coot merged 8 commits into
mainfrom
coot/dmq-issues
Jun 24, 2026
Merged

Fixed various issues#61
coot merged 8 commits into
mainfrom
coot/dmq-issues

Conversation

@coot

@coot coot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

List of changes

Checklist

  • related issue
  • My changes generate no new warnings
  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works

@github-project-automation github-project-automation Bot moved this to In Progress in Ouroboros Network Jun 19, 2026
@coot coot force-pushed the coot/dmq-issues branch 3 times, most recently from c05671a to 8c91244 Compare June 22, 2026 16:22

@crocodile-dentist crocodile-dentist left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, minor comments

Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs Outdated
Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs Outdated
Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs
Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs
Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs
Comment thread dmq-node/src/DMQ/Protocol/SigSubmission/Validate.hs
@coot coot force-pushed the coot/dmq-issues branch from 8c91244 to d353ba1 Compare June 23, 2026 09:32
coot added 8 commits June 24, 2026 11:47
Since we use `State s (Except e)` monad when validating a signature, we
can update the state at any point.  If a signature will be invalid in
by a subsequent validation check the updated state will be thrown away.

PoolId can be computed once.
Each `PoolId` can emit one signature every `60` seconds.
Generate more transactions, this improves discovering a peer metric
counter examples by ~10x.

Use `shrinkMapBy` and `shrinkList` to implement a `Map` shrinker.  This
way we also shrink keys and values in the map.

The original shrinker also had a bug which resulted in an infinite loop.
Instead of reporting each sig id separately we report all received sig
ids at once.  The main difference is that now the peer metric will
remove old entries regardless whether we received an empty list of not.

The pure model of peer metric was updated.  This was triggered by
a counterexample found where the model inadequately removed old
entries.
@coot coot force-pushed the coot/dmq-issues branch from 63b8a56 to 62a3b46 Compare June 24, 2026 09:48
@coot coot enabled auto-merge June 24, 2026 09:48
@coot coot added this pull request to the merge queue Jun 24, 2026
Merged via the queue into main with commit 9e30c49 Jun 24, 2026
7 of 8 checks passed
@coot coot deleted the coot/dmq-issues branch June 24, 2026 10:15
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Ouroboros Network Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants