Skip to content

Remove script validity flags from Dijkstra transaction builders - #1474

Merged
Jimbo4350 merged 2 commits into
masterfrom
fix/dijkstra-script-validity-flags
Oct 16, 2026
Merged

Jimbo4350 merged 2 commits into
masterfrom
fix/dijkstra-script-validity-flags

Conversation

@Jimbo4350

Copy link
Copy Markdown
Contributor

Context

Dijkstra transaction builders still exposed --script-valid and --script-invalid, which let the transaction author supply the validity assertion that CIP-0167 removes from standalone transactions. Reject both options for Dijkstra transaction build, build-raw, and build-estimate, and remove them from command help. Conway and the current latest alias retain both options.

This is the CLI option change in preparation for CIP-0167. Transaction serialization and any replacement Node-to-Client submission parameter remain dependency/protocol work.

How to trust this PR

  • cabal build all --enable-tests passed with GHC 9.12.4.
  • CARDANO_CLI="$(cabal list-bin exe:cardano-cli)" cabal test all --enable-tests --test-show-details=direct passed: 827 golden tests and 121 functional tests.
  • The new regression test checks rejection of both flags across all three Dijkstra builders and their continued availability in Conway/latest help.
  • Updated the combined help snapshot and the three affected command snapshots.
  • Fourmolu, HLint, and git diff --check passed. Checks were run directly because the local pre-commit hook references a missing Nix interpreter.

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated
  • Self-reviewed the diff
  • Changelog fragment added in .changes/

@Jimbo4350
Jimbo4350 marked this pull request as ready for review October 16, 2026 17:39
Copilot AI balanced review requested due to automatic review settings October 16, 2026 17:39

Copilot AI 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.

🟢 Approval recommended

The focused parser change consistently applies the intended era restriction, with matching regression coverage and help updates.

0 open findings

What changed in this PR

Prepares Dijkstra transaction builders for CIP-0167 by removing author-supplied script validity flags, while preserving Conway/latest behavior.

Changes:

  • Reject both validity flags across all three Dijkstra builders.
  • Add regression coverage and update help snapshots.
  • Document the breaking CLI change.
File Description
cardano-cli/​test/​cardano-cli-test/​Test/​Cli/​Transaction/​Build.hs Tests Dijkstra rejection and Conway/latest help.
cardano-cli/​test/​cardano-cli-golden/​files/​golden/​help/​dijkstra_transaction_build.cli Removes validity flags from build help.
cardano-cli/​test/​cardano-cli-golden/​files/​golden/​help/​dijkstra_transaction_build-raw.cli Removes validity flags from build-raw help.
cardano-cli/​test/​cardano-cli-golden/​files/​golden/​help/​dijkstra_transaction_build-estimate.cli Removes validity flags from build-estimate help.
cardano-cli/​test/​cardano-cli-golden/​files/​golden/​help.cli Updates combined help snapshot.
cardano-cli/​src/​Cardano/​CLI/​EraBased/​Transaction/​Option.hs Gates validity options by era across all builders.
.changes/​20261016_dijkstra_script_validity_flags.yml Records the breaking option removal.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@palas palas 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.

It all looks correct to me 👍

]
pScriptValidity :: Exp.Era era -> Parser (Maybe ScriptValidity)
pScriptValidity era' = case era' of
Exp.DijkstraEra -> pure Nothing

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.

Would be good to have a comment that points at CIP-0167

@Jimbo4350
Jimbo4350 force-pushed the fix/dijkstra-script-validity-flags branch from 7255582 to 344f24b Compare October 16, 2026 18:19
@Jimbo4350
Jimbo4350 enabled auto-merge October 16, 2026 18:20
@Jimbo4350
Jimbo4350 added this pull request to the merge queue Oct 16, 2026
Merged via the queue into master with commit aa5443d Oct 16, 2026
25 checks passed
@Jimbo4350
Jimbo4350 deleted the fix/dijkstra-script-validity-flags branch October 16, 2026 18:48
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.

3 participants