8000 fix: improve multisign usage of `simulate` by mvadari · Pull Request #5479 · XRPLF/rippled · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

fix: improve multisign usage of simulate #5479

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

Merged
merged 9 commits into from
Jun 10, 2025
Merged

Conversation

mvadari
Copy link
Collaborator
@mvadari mvadari commented Jun 6, 2025

High Level Overview of Change

This PR allows users to submit simulate requests from a multisign account without needing to specify the accounts that are doing the multisigning, and fixes an error with simulate that allowed double-"signed" (both single-sign and multi-sign public keys are provided) transactions.

Context of Change

There was some confusion about how to use simulate with a multisign account. Receiving tefMASTER_DISABLED was unexpected. This change makes it more intuitive.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)

API Impact

  • Public API: Non-breaking change

Before / After

Before:
Submitting a simulate request for a transaction from an account with the master key disabled and a multisig setup would result in tefMASTER_DISABLED.
You can submit a simulate request with both SigningPubKey and Signers.

After:
Submitting a simulate request for a transaction from an account with the master key disabled and a multisig setup ignores signature checking completely (unless Signers is provided in any way, shape, or form).
Submitting a simulate request with both SigningPubKey and Signers results in temINVALID.

Test Plan

Tests were adjusted and CI passes.

@mvadari mvadari requested review from Bronek and oleks-rip June 6, 2025 13:47
Copy link
codecov bot commented Jun 6, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 79.1%. Comparing base (d494bf4) to head (d02257c).
Report is 1 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##           develop   #5479   +/-   ##
=======================================
  Coverage     79.1%   79.1%           
=======================================
  Files          817     817           
  Lines        71700   71703    +3     
  Branches      8257    8241   -16     
=======================================
+ Hits         56692   56711   +19     
+ Misses       15008   14992   -16     
Files with missing lines Coverage Δ
src/xrpld/app/tx/detail/Transactor.cpp 89.3% <100.0%> (+0.1%) ⬆️

... and 10 files with indirect coverage changes

Impacted file tree graph

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Bronek
Bronek approved these changes 8000 Jun 6, 2025
Copy link
Collaborator
@Bronek Bronek left a comment

Choose a reason for hiding this comment

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

Simple change with good unit test coverage. Ship it :)

@Bronek Bronek self-requested a review June 6, 2025 16:09
@mvadari
Copy link
Collaborator Author
mvadari commented Jun 6, 2025

@Bronek you may want to re-review, I found another issue when refactoring (you could simulate a transaction that was both single- and multi-"signed")

Copy link
Collaborator
@Bronek Bronek left a comment

Choose a reason for hiding this comment

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

Nice !

@Bronek Bronek added the Ready to merge *PR author* thinks it's ready to merge. Has passed code review. Perf sign-off may still be required. label Jun 10, 2025
@bthomee bthomee merged commit 35a40a8 into XRPLF:develop Jun 10, 2025
26 checks passed
This was referenced Jun 12, 2025
@legleux legleux mentioned this pull request Jun 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Ready to merge *PR author* thinks it's ready to merge. Has passed code review. Perf sign-off may still be required.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
0