Vito
509c00f4fa
chore: Apply clang-tidy include and const-correctness fixes
...
Keep the develop-merge tree tidy-clean for headers and tests that
include-cleaner and braces checks flagged.
2026-09-02 12:12:02 +02:00
Vito
0d8cd55c3f
fix: Align lending tests and holding checks after develop merge
...
Existing-line LoanSet/LoanAccept paths must skip canAddHolding after
fixCleanup3_4_0, and tests must follow pre-V1.1 VaultID and closed-ended
broker rules so the merged PRs stay green on develop.
2026-09-02 12:09:59 +02:00
Vito
5b832250c8
Merge remote-tracking branch 'origin/tapanito/empty-holding' into ripple/lending-protocol-fv
2026-09-02 11:07:29 +02:00
Vito
6db6e7379a
Merge remote-tracking branch 'origin/tapanito/vault-zero-delta' into ripple/lending-protocol-fv
2026-09-02 11:05:38 +02:00
Vito
f9bbf77d86
Merge remote-tracking branch 'origin/tapanito/vault-block-deposit' into ripple/lending-protocol-fv
2026-09-02 11:05:29 +02:00
Vito
9b7efc1e01
Merge remote-tracking branch 'origin/tapanito/loan-broker-set' into ripple/lending-protocol-fv
2026-09-02 11:03:41 +02:00
Vito
d45382bf26
Merge remote-tracking branch 'origin/a1q123456/split-loan-set-and-loan-accept-implementation' into ripple/lending-protocol-fv
2026-09-02 11:03:18 +02:00
Vito
d0108ee9c2
Merge remote-tracking branch 'origin/tapanito/vault-donation' into ripple/lending-protocol-fv
2026-09-02 11:01:43 +02:00
Vito
6428435882
fix: Skip canAddHolding in LoanSet when the holding already exists
2026-09-02 10:55:57 +02:00
Vito
692567078a
test: Align zero-withdraw comments with missing-recipient path
...
ValidVault only allows a missing destination delta when zeroDeltaIsLegitimate; a present zero delta is still rejected.
2026-09-02 10:40:36 +02:00
Vito
5acab52b09
fix: Keep zero-withdraw destination deltas strict
...
Remove the redundant present-delta exemption so an unsolicited empty holding cannot pass the vault invariant, and cover missing IOU trust lines plus the relevant pre-amendment MPT path.
2026-09-02 10:37:12 +02:00
Vito
02b6e2b653
chore: Use exists() for addEmptyHolding trust-line presence
2026-09-02 10:32:53 +02:00
Vito
8720fa025a
test: Assert freeze and payout deltas for addEmptyHolding self-withdraw
2026-09-02 10:04:56 +02:00
Vito
81ace99a75
Merge remote-tracking branch 'origin/develop' into tapanito/vault-zero-delta
2026-09-02 01:47:44 +02:00
Vito
46cb380950
Merge remote-tracking branch 'origin/develop' into tapanito/empty-holding
2026-09-02 01:47:31 +02:00
Mayukha Vadari
deaf596494
docs: Add AGENTS.md/CLAUDE.md for AI coding agent guidance ( #8067 )
2026-09-01 21:57:34 +00:00
Vito
d4f67f9647
Merge remote-tracking branch 'origin/develop' into tapanito/vault-zero-delta
2026-09-01 21:02:48 +02:00
Vito
b56c7f0a1b
Merge remote-tracking branch 'origin/develop' into tapanito/empty-holding
2026-09-01 21:02:39 +02:00
Vito Tumas
7863ac8cf6
fix: Add 60s buffer before closed-ended vault redemption ( #8151 )
2026-09-01 18:27:05 +00:00
Vito
c68bacc8da
test: Describe XRP zero-withdraw SUCCESS as collapse-to-absence
...
The sponsored leftover-share case is the missing-recipient-delta arm after
economically-zero XRP is collapsed, not the present-delta ternary.
2026-09-01 18:30:15 +02:00
Vito
e7be3cde8e
test: Cover sponsored XRP zero-payout vault withdraw
...
MPT cases never record a destination delta. An XRP vault with a sponsored fee
touches the sender AccountRoot with no economic change, which is the path
ValidVault's zeroDeltaIsLegitimate disjunct is for.
2026-09-01 17:36:29 +02:00
Vito
ea08af56d4
Merge remote-tracking branch 'origin/develop' into tapanito/vault-zero-delta
...
# Conflicts:
# src/test/app/vault/VaultBugs_test.cpp
2026-09-01 17:18:59 +02:00
Vito
616e66d44c
Merge remote-tracking branch 'origin/develop' into tapanito/empty-holding
...
# Conflicts:
# src/test/app/vault/VaultBugs_test.cpp
2026-09-01 17:18:55 +02:00
Vito
389eac40c7
test: Name boolean arguments at MPT zero-withdraw scenario calls
2026-09-01 17:02:58 +02:00
Vito
7fa67ac2eb
Merge remote-tracking branch 'origin/develop' into tapanito/empty-holding
2026-09-01 16:48:17 +02:00
Vito
5e97b0ecfe
Merge remote-tracking branch 'origin/develop' into tapanito/vault-zero-delta
2026-09-01 16:48:17 +02:00
Vito Tumas
b3b38e4416
fix: Correct fee-payer XRP delta in ValidVault for sponsored VaultWithdraw ( #8141 )
2026-09-01 14:43:11 +00:00
Vito Tumas
ccd5dc5e06
fix: Keep LoanBrokerDelete valid for auth-required MPT cover ( #8144 )
2026-09-01 14:40:53 +00:00
Vito
07f51ca935
fix: Clarify zeroDeltaIsLegitimate comment for post-amendment withdraw
...
The old wording tied the backstop to pre-amendment empty holding insert, which doWithdraw no longer does once fixCleanup3_4_0 is on.
2026-09-01 16:14:34 +02:00
Vito
249e6133e2
chore: Include base_uint.h for uint256 to_string
...
clang-tidy include-cleaner requires a direct include for to_string(domainId) in the private-vault DefaultRipple test.
2026-09-01 16:10:02 +02:00
Vito
f5fd243601
fix: Treat an existing IOU line as a no-op in addEmptyHolding
...
Self-destination VaultWithdraw and LoanBrokerCoverWithdraw called addEmptyHolding and only tolerated tecDUPLICATE, so an issuer clearing asfDefaultRipple made those payouts fail with tecINTERNAL even when the destination already held the asset.
2026-09-01 16:09:11 +02:00
Vito Tumas
b2453b626e
fix: Unblock VaultSet and cash-basis LoanSet at AssetsMaximum ( #8143 )
2026-09-01 14:06:17 +00:00
Vito
cc698452e3
fix: Allow zero-value MPT vault withdraw when the asset holding is missing
...
A fully impaired pool can legitimately pay nothing for a share burn.
doWithdraw used to insert an empty self-destination MPToken for that
zero payout, which tripped ValidVault and ValidMPTIssuance.
2026-09-01 15:51:59 +02:00
Vito Tumas
de6e5d3a94
fix: Keep VaultDeposit share count after the assetsTotal clamp ( #8140 )
2026-09-01 13:51:39 +00:00
Copilot
fac20a06f3
refactor: Add common helper function for injected metadata fields in RPCs ( #5706 )
...
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: 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-08-31 17:21:25 +00:00
Ayaz Salikhov
9a7c5ea593
chore: Bump version to 3.4.0-b3 ( #8132 )
3.4.0-b3
2026-08-27 17:26:55 +00:00
Jingchen
7281e0606a
feat: Add vault invariants ( #7732 )
...
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-08-27 17:15:17 +00:00
Jingchen
71f5555873
feat: Remove pseudo account field filter ( #8042 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-08-27 13:52:23 +00:00
Ayaz Salikhov
3967ed6d54
build: Update release-info to get better pkg_release ( #8131 )
2026-08-27 13:34:38 +00:00
Vito Tumas
e0151229b6
fix: Waive unrealized-loss discount on sole-holder VaultClawback ( #8119 )
2026-08-27 08:15:38 +00:00
Ayaz Salikhov
b6a899583b
build: Make packaging reusable ( #8126 )
2026-08-26 19:44:31 +00:00
Gregory Tsipenyuk
dc3bd9cf00
fix: Fix MPT/DEX Audit/Attackathon reports (Phase 1) ( #7334 )
2026-08-26 18:09:46 +00:00
Vito Tumas
1e8b136bfb
feat: Enable LendingProtocolV1_1 amendment ( #8125 )
2026-08-26 17:35:54 +00:00
Vito Tumas
3c47af779c
fix: Clamp Vault Deposit, Withdraw, and Clawback to assetsTotal grid ( #8057 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-08-26 17:02:05 +00:00
Ayaz Salikhov
c28d389e0e
build: Refactor generate.py to make packaging_config part of config ( #8115 )
2026-08-26 14:04:58 +00:00
Ayaz Salikhov
d83a84510e
chore: Bump version to 3.4.0-b2 ( #8120 )
3.4.0-b2
2026-08-26 14:03:01 +00:00
Timur Yalymov
f8fba079fe
fix: Refuse a pseudo-account as the vault clawback holder ( #8111 )
...
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
2026-08-26 13:55:04 +00:00
Sergey Kuznetsov
42502e4263
ci: Update CI image ( #8121 )
2026-08-26 13:42:19 +00:00
Vito Tumas
36c165f74d
fix: Prevent early loan impairment and due-date manipulation ( #6557 )
...
Co-authored-by: Ed Hennis <ed@ripple.com >
Co-authored-by: Timur Yalymov <36795566+tyalymov@users.noreply.github.com >
2026-08-26 13:38:24 +00:00
Peter Chen
f7ea645bf4
fix: AMMClawback exact LP token boundary ( #7373 )
2026-08-26 13:14:53 +00:00