Pallas Validate
Phase-1 (and optionally phase-2) Cardano transaction validation against the live ledger rules. Useful for clients that want to reject ill-formed or unenforceable transactions locally before submitting them, or to replay historical chains and confirm conformance with the protocol specification.
Usage
use validate_tx;
validate_tx?;
validate_tx dispatches on the era encoded in Environment.prot_params
and routes to the matching era-specific validator (validate_byron_tx,
validate_shelley_ma_tx, validate_alonzo_tx, validate_babbage_tx,
validate_conway_tx).
Overview
phase1— phase-1 (structural / rule-based) validation, with one module per era:byron,shelley_ma,alonzo,babbage,conway. Top-level entry points arevalidate_tx(single tx) andvalidate_txs(LEDGERS sequence rule).phase2— phase-2 (Plutus script execution) validation. Behind thephase2cargo feature.utils— the shared input types every validator takes:Environment,UTxOs,CertState,MultiEraProtocolParameters, and the unifiedValidationError/ValidationResulttypes.
Feature flags
phase2— pulls in Plutus script execution and exposes thephase2module.
Further reading
docs/byron.md,docs/shelleyMA.md,docs/alonzo.md,docs/babbage.md— mathematical specifications, one per era.tests/README.md— test-suite layout and how to reproduce the per-era fixtures.