Skip to content

Implement transaction's UTxOW rules in Shelley Era #424

@golddydev

Description

@golddydev

Story

For transaction phase 1 validation, we need to check the UTxOW rules for all transaction.

Most of checks are done under Shelley Era and other Eras use functions from Shelley era for same checks.

Description

UTxOW are the rules to validate transaction in Shelley Era.
Those rules can be implemented under tx_unpacker module to check transactions after they are unpacked from block.

  • InvalidWitnessUTxOW Invalid VKey witness
  • MissingVKeyWitnessesUTxOW Missing VKey witness
  • MissingScriptWitnessesUTXOW Script is missing
  • ScriptWitnessNotValidatingUTXOW Native scripts validations failed
  • MIRInsufficientGenesisSigsUTXOW Not enough Genesis Keys signatures for MIR
  • MissingTxBodyMetadataHash Tx has Metadata but no hash
  • MissingTxMetadata Tx has metadata hash, but no Metadata
  • ConflictingMetadataHash Metadata hash mismatch with its content
  • InvalidMetadata
  • ExtraneousScriptWitnessesUTXOW Unused scripts

Acceptance Criteria

  • Functions for all rules under UTxOW are implemented
  • Corresponding unit tests for each rule implemented. (this requires invalid transaction cbor.)
  • Publish ValidationError message when one of those checks are failed

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions