Bart
a09a255ed4
fix: Report unreadable SHAMap nodes instead of throwing
...
`SHAMap::walkMap` and `walkMapParallel` treat a null `descendNoStore` result as
"this node is missing" and record it in their `missingNodes` output, but
`descendNoStore` used the throwing `fetchNode`, so that branch could never run for
a backed map. `Ledger::walkLedger` propagated the throw instead of returning
false, its "N missing account node(s)" log never printed, and `LedgerCleaner` never
reached the path that clears the ledger and re-acquires it. `descendNoStore` now
uses `fetchNodeNT`, which makes all three behave as written, and the null check
after `fetchNode` in `descend` goes away as the dead code it always was.
`visitNodes` and `visitLeaves` now return whether the walk read every node it
reached, and the walk ends at the first node it cannot read, since no caller can use
a partial result. `SHAMapStoreImp::run` abandons the rotation cycle on false, which
is what its former `catch (SHAMapMissingNode)` did and what `clearPrior` plus the
archive deletion in `rotate` require. `processReplayDeltaRequest` answers
`reNO_NODE`, the code `xrpl.proto` documents for nodes we do not have, rather than
sending a transaction list it knows is short, and clears the header it had already
set so an error reply carries no partial payload. The two `RCLConsensus` walks run
on unbacked maps, which have no node store to fail to read, so they cannot report an
incomplete result.
`walkMapParallel` decided its result from the exceptions its workers caught, yet
those workers record an unreadable child in `missingNodes` instead, so it never
consulted the list it was filling. The result now counts what this call recorded,
measured against the caller's initial vector size. The pass that reads the root's
children runs before any worker and dropped a null child silently, because the loop
that spawns workers skips one; it records the miss itself now. A one-node map
reports complete, which is what `walkMap` already reported for the same input, and
the worker handler catches `std::exception` so that nothing leaves a worker's
thread.
Nine gtests in `src/tests/libxrpl/shamap/SHAMapMissingNode.cpp` cover the three
walks over a partially copied map, the missing-node budget, an early stop by the
visitor, a stop at the root, a map holding only its root, and a map whose root is a
leaf.
2026-09-23 16:07:49 +02:00
Alex Kremer
5a5ad8673a
style: Precommit hook for gtest naming ( #8026 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-09-22 22:39:23 +00:00
Copilot
8f4e9c25d8
fix: Add CTID to ledger command expanded transactions ( #6401 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: Mayukha Vadari <mvadari@gmail.com >
Co-authored-by: Mayukha Vadari <mvadari@ripple.com >
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
Co-authored-by: Timur Yalymov <36795566+tyalymov@users.noreply.github.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-09-22 20:19:05 +00:00
Bart
d8870162eb
test: Share peer test doubles across the overlay and app suites ( #8246 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-22 20:03:55 +00:00
yinyiqian1
8b1a2282c3
feat: Support ConfidentialMPTMirrorUpdate ( #8192 )
2026-09-22 17:56:52 +00:00
yinyiqian1
0219c01b33
fix: Check zero object id in SponsorshipTransfer preflight ( #8254 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-09-22 17:02:59 +00:00
Bart
00606bec1a
fix: Derive traversal node IDs from the branch actually descended ( #7942 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-22 14:02:11 +00:00
Mayukha Vadari
2bc17c3e73
refactor: Add initial wrapper classes for all SLEs ( #7886 )
2026-09-21 19:47:23 +00:00
dependabot[bot]
0229c294a9
ci: [DEPENDABOT] bump codecov/codecov-action from 7.0.0 to 7.1.1 in the github-actions group across 1 directory ( #8251 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-21 12:09:57 +00:00
Bart
184fe173fb
refactor: Remove a dead unwrap from the WebSocket success path ( #8252 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-21 11:23:31 +00:00
Bart
16f7b263fd
docs: Correct three comments about null-terminated views ( #8253 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-21 11:12:09 +00:00
Bart
f6b51f0b8b
ci: Say when a package publish is a dry run ( #8247 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-18 18:31:07 +00:00
Denis Angell
07b36871c7
ci: Publish packages through packages-upload.xrplf.org ( #8241 )
2026-09-17 18:05:51 +00:00
Bart
638ae08eeb
chore: Bump version to 3.5.0-b0
2026-09-17 13:33:08 +02:00
yinyiqian1
24be48ee84
fix: Reject PaymentBurn payments that cross zero balance
2026-09-17 13:33:08 +02:00
Pratik Mankawde
e20f448a71
fix: Reject variable-length prefixes the encoder cannot write
2026-09-17 13:33:07 +02:00
Vito Tumas
f6c80fef68
fix: Relax MPT authorize cap for LoanSet and VaultWithdraw
2026-09-17 13:33:07 +02:00
Gregory Tsipenyuk
a0c12420b5
fix: Skip CheckCash limit waiver for the issuer
2026-09-17 13:33:06 +02:00
Ayaz Salikhov
1245254cac
build: Add missing script to conan package
2026-09-17 13:33:06 +02:00
Jingchen
b60636169a
fix: Make calculateBaseFee exception-safe
2026-09-17 13:33:06 +02:00
Ayaz Salikhov
d6022fbc4d
build: Fix test installation on debian:11 due to EOL
2026-09-17 13:33:06 +02:00
Ayaz Salikhov
295b74da1c
build: Add assert-enabled builds and packages
2026-09-17 13:33:05 +02:00
Timothy Banks
faa2bf583f
fix: Cap TMTransactions list size and charge fee for undeserializable transactions
2026-09-17 13:33:04 +02:00
Vito Tumas
da260fa42b
fix: Relax Loan Invariants to allow zero-principal LoanPay transaction
2026-09-17 13:33:04 +02:00
Timothy Banks
53788b193d
test: Add ProtocolMessage harness for testing TMPing
2026-09-17 13:33:03 +02:00
Timothy Banks
227f1b4d9c
fix: Unbounded Database Seek via TMGetLedger
2026-09-17 13:33:03 +02:00
Ed Hennis
26b66957ec
fix: Trim unknown fields when parsing incoming peer protobuf messages
2026-09-17 13:33:02 +02:00
Mayukha Vadari
54e62a621f
fix: Prevent simulate from updating the orderbook db
2026-09-17 13:33:02 +02:00
Timothy Banks
53628b70c0
fix: Use a hardened hash on the STPathElement
2026-09-17 13:33:01 +02:00
Vito Tumas
6fec2c11bf
refactor: Rename vault accrual accounting to instant interest recognition ( #8237 )
2026-09-17 10:27:44 +00:00
Bart
04108a030c
refactor: Build the RPC dispatch and command-line tables at compile time ( #8006 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
2026-09-17 10:01:28 +00:00
Bart
551a19b10d
refactor: Add Cluster::isMember, a membership query that copies nothing ( #8221 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-09-15 20:40:29 +00:00
Peter Chen
b0a940a383
refactor: Extract common tx-building helpers for ConfidentialMPT in MPTTester ( #8135 )
2026-09-15 17:13:44 +00:00
Bart
e302e4eeed
fix: Set the peer limit total when per-direction limits are configured ( #8220 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
2026-09-15 13:14:12 +00:00
Mayukha Vadari
1a4a40ebb8
fix: Update noripple_check to exclude transactions field on error responses ( #6303 )
...
Co-authored-by: Timur Yalymov <36795566+tyalymov@users.noreply.github.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-09-15 00:21:57 +00:00
yinyiqian1
7f55dd390c
feat: Support mirror key epochs in confidential MPT transactions for Key Rotation amendment ( #8210 )
2026-09-14 18:23:38 +00:00
Sergey Kuznetsov
9403736199
ci: Exclude Rust unit tests from code coverage ( #8203 )
2026-09-10 11:38:25 +00:00
Mayukha Vadari
028783661d
feat: Apply .macro changes from ripple/smart-escrow ( #8157 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-09-09 20:05:58 +00:00
Vito Tumas
21890d9daf
feat: Register featureLendingProtocolV1_2 amendment ( #8185 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-09-09 10:01:32 +00:00
Sergey Kuznetsov
060957ed39
ci: Add nightly Rust toolchain to the CI image ( #8182 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-09-09 01:24:28 +00:00
Ayaz Salikhov
1381483c7a
build: Fix test installation on debian:11 due to EOL ( #8200 )
2026-09-08 22:49:16 +00:00
dependabot[bot]
3e4bdf2782
ci: [DEPENDABOT] bump actions/deploy-pages from 5.0.0 to 5.0.1 in the github-actions group across 1 directory ( #8180 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-07 16:07:56 +00:00
Mayukha Vadari
e3c8996e44
feat: Add fixCleanup3_5_0 amendment placeholder ( #8174 )
2026-09-05 00:06:14 +00:00
yinyiqian1
d5bfe94f15
feat: Support key rotation in MPTokenIssuanceSet ( #7915 )
2026-09-03 21:13:06 +00:00
Bart
2ad4def35f
chore: Bump version to 3.4.0-rc1 ( #8171 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
3.4.0-rc1
2026-09-03 20:07:24 +00:00
Mayukha Vadari
f7f50caa6e
docs: Backfill API-CHANGELOG.md for 3.1.1 through 3.3.0 ( #8159 )
2026-09-03 19:48:15 +00:00
Ayaz Salikhov
3e54e7d00b
fix: Don't use github.workspace as it slow downs gcovr ( #8173 )
2026-09-03 19:20:38 +00:00
Valentin Balaschenko
827b50f169
fix: Flaky online delete tests, and cover the health checks added in #5531 ( #8137 )
2026-09-03 18:56:30 +00:00
Mayukha Vadari
58a59c37ed
fix: Add signature prefixes for sfCounterpartySignature and sfSponsorSignature ( #8162 )
2026-09-03 17:19:07 +00:00
Ayaz Salikhov
986065c16f
build: Verify glibc version was determined in debian package ( #8170 )
2026-09-03 16:54:54 +00:00