Skip to content
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

Ts constrained witnessing take2 #4799

Closed
wants to merge 3 commits into from

Conversation

TimSheard
Copy link
Contributor

@TimSheard TimSheard commented Dec 16, 2024

Variant on PR #4732, picks up where things went wrong rebasing on master where parameterization on Crypto was removed.

When we write generators the TxBody, we need to make sure that some of the types generated can be witnessed.
Most types that need witnessing are hashes, just generating a random hash will not do, since that hash has to be the
hash of an actual object that we can compute, given the hash. Since that usually impossible, we will have do it backwards,
i.e. generate the object, then return the hash, and remember the association for when it comes time to produce the witness.

This is the role of the data WitUniv.

Checklist

  • Commits in meaningful sequence and with useful messages
  • Tests added or updated when needed
  • CHANGELOG.md files updated for packages with externally visible changes

    New section is never added with the code changes. (See RELEASING.md)
  • Versions updated in .cabal and CHANGELOG.md files when necessary, according to the
    versioning process.
  • Version bounds in .cabal files updated when necessary

    If you change the bounds in a cabal file, that package itself must have a version increase. (See RELEASING.md)
  • Code formatted (use scripts/fourmolize.sh)
  • Cabal files formatted (use scripts/cabal-format.sh)
  • hie.yaml updated (use scripts/gen-hie.sh)
  • Self-reviewed the diff

Added the Witness class, and many instances.
Improved Specs to require witnesses where needed.
WitUniv used in DELEG POOL GOVCERT CERT and CERTS conformance rules
…ecification is failing. Add some property tests that conformsToSpec and conformsToSpecE report the "same" results.
@TimSheard TimSheard force-pushed the ts-constrained-witnessingTake2 branch from 93b08ba to 3ca5487 Compare December 16, 2024 23:43
@TimSheard TimSheard marked this pull request as ready for review December 17, 2024 00:51
@TimSheard TimSheard requested a review from a team as a code owner December 17, 2024 00:51
@TimSheard TimSheard closed this Dec 18, 2024
@TimSheard
Copy link
Contributor Author

Changes here were rolled into PR #4732

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant