A release-heavy week across the ecosystem. xrpl.js shipped stable version 5.2.0 with fixCleanup3_4_0 signing prefix support and stricter entropy validation, alongside companion releases of ripple-binary-codec@2.11.0 and ripple-keypairs@3.1.0. xrpl-py published beta v5.2.0b0 and Clio released beta 2.9.0-b1. In rippled, 13 PRs merged to develop — highlighted by the Cosign branch merge, Smart Escrow macro fields ported to develop, WASM host function code generation refactors, and the featureLendingProtocolV1_2 amendment registration. XRPL-Standards had a major spec week with 10 PRs merged, including XLS-90d (Permissioned Domains for MPTs), XLS-64 freeze semantics for pseudo-accounts, and XLS-66 impairment logic updates addressing a bug bounty finding. The developer portal merged 8 PRs including a new XRPL Explorers page, Swell 2026 event updates, and signing documentation for 3.4.0.
This was a release-heavy week for the XRP Ledger developer ecosystem. The JavaScript library (xrpl.js) published version 5.2.0, its first stable release in several weeks, with two important changes. First, it adds support for a security improvement called "role-specific signing prefixes" — this prevents a signature created for one purpose (like co-signing a loan) from being copied and reused for a different purpose (like sponsoring someone's fees). Second, the library now strictly validates the random data used to create wallets, rejecting invalid inputs instead of silently producing unexpected results. Python developers also got a beta release (xrpl-py v5.2.0b0) with number serialization fixes and lending protocol updates. The Clio API server published a new beta (2.9.0-b1).
On the core server software (rippled), 13 changes merged to the development branch. The most notable was the Cosign branch integration — a large merge bringing the on-chain transaction proposal feature onto the main development line. Smart Escrow definitions (gas limits, gas prices, bytecode size limits) were also ported to the development branch, though the feature itself remains disabled. The team upgraded the WebAssembly interpreter from a beta to a stable release (Wasmi 2.0) and refactored how WASM host functions are registered, automating what was previously manual. The specification side was equally busy: ten specs merged, including a new XLS-90d defining how token issuers can use Permissioned Domains to control who can hold their tokens, freeze/lock rules for pseudo-accounts used by AMMs and vaults, and a fix to the lending protocol's impairment logic that had been identified through the bug bounty program — previously, a loan broker could force a borrower into default within 60 seconds of loan creation by triggering an impairment, and the spec now requires an actual missed payment before impairment is allowed.
The developer portal at xrpl.org received a new page listing XRPL explorers (addressing community feedback about discoverability), Japanese translations for the fungible tokens section, updated vault documentation, and Swell 2026 event promotion. Community members contributed a fix for IOU amount parsing that could silently wrap large numbers, a PR to mask sensitive fields in batch RPC error responses, and a TOML checker crash fix.
For the latest updates, follow @XRPLF and @RippleXDev on X. The xrpl.js 5.2.0 release is available here, and Clio 2.9.0-b1 here.
Note: All rippled changes below were merged to the develop branch and are not yet live on the network. A tagged release is required for any change to reach production.
Note: SDK PRs below were merged to each library's main branch. They become available to application developers only after a tagged release is published (npm for xrpl.js, Maven Central for xrpl4j, PyPI for xrpl-py). If no corresponding SDK release appears in the data, treat the feature as merged-but-pending-release and phrase availability accordingly.
SmartEscrow amendment (currently Supported::No) and new protocol fields (sfGasLimit, sfBytecodeSizeLimit, sfGasPrice, sfGas, sfGasUsed). This limits future merge conflicts by bringing Smart Escrow definitions onto develop early.featureLendingProtocolV1_2 amendment registered: rippled#8185 (+1/−0) — Registered as Supported::No / DefaultNo with no protocol behavior gated yet — a placeholder for future work.actions/deploy-pages from 5.0.0 to 5.0.1: rippled#8180 (+1/−1) — Routine Dependabot update. - fixCleanup3_4_0 signing prefix support: xrpl.js#3462 (+411/−314, 14 files) — Adds CPT/CPM (counterparty) and SPN/SPM (sponsor) hash prefixes and corresponding encode/multisign functions, preventing cross-role signature reuse. Developers can now use encodeForSigningCounterparty, encodeForSigningSponsor, and their multisigning counterparts.
- Stricter entropy validation: xrpl.js#3469 (+340/−8) — Wallet.fromEntropy and generateSeed (ripple-keypairs) now require exactly 16 bytes and reject non-Uint8Array/non-array input, sparse arrays, and out-of-range values, instead of silently truncating.
- CI fix: xrpl.js#3466 (+16/−5) — Fixed a raw GitHub API error leaking into release Slack notifications.
- Release PR: xrpl.js#3475 — Automated release merge to main.
v5.2.0b0 beta was published this week.libxrpl-3.4.0-rc1: clio#3203 (+76/−44, 12 files) — Keeps Clio's development builds aligned with the latest rippled release candidate.account_info and account_currencies are now the first two handlers using the shared rpc-spec system. Also fixes a discrepancy in malformed ledger hash/index handling.LedgerSpecifier helper. Nothing changes on the wire — this is infrastructure for the ongoing migration.src/rpc/Errors.hpp becomes a shim over the shared spec. ETL-specific error codes carved out into a separate etl::EtlError.docker/setup-qemu-action 4.2.0→4.3.0 (clio#3201) and actions/deploy-pages 5.0.0→5.0.1 (clio#3200).SponsorSignature note to Common Fields.xrpl-docs and fixes the LendingProtocolV1_1 description on the known amendments page.ripple-icon-timed.png to xrp-icon-timed.png, matching naming conventions for other XRP marks.Number type, and documents stranded-share burns via VaultClawback.DomainID on MPTokenIssuance for permissioned-domain-based access control.Loan.NextPaymentDueDate.LendingProtocolV1_1.ValidatedLedger#age() made optional: xrpl4j#825 (+127/−3) — Fixes a deserialization failure when age is absent from closed_ledger/validated_ledger in the server_info response. Closes xrpl4j#824. Merged to main — pending release.rippled — Smart Escrow fee voting (rippled#8214, +888/−73, 17 files) — Adds GasLimit, BytecodeSizeLimit, and GasPrice as votable network fee settings, gated on featureSmartEscrow. Currently has changes requested in review. This is a substantial addition to the fee-voting mechanism.
rippled — Assorted MPT/DEX offer fixes (rippled#8211, +1,029/−101, 8 files) — Handles MPT offers whose fee gross-up exceeds the maximum, limits MPT offer input to MaximumAmount in BookStep, and uses Number arithmetic for MPT operands. Approved by 3 reviewers, nearing merge.
rippled — Round up MPT owner cost in book_offers (rippled#8213, +70/−1) — Fixes a rounding discrepancy between getBookPage and BookStep for MPT transfer fees. Approved.
rippled — Mask secrets in batch RPC errors (rippled#8219, +233/−0, 3 files) — By a community member (@joshuahamsa). Masks secret, seed, seed_hex, and passphrase in HTTP batch RPC error responses. Closes rippled#7461. Has unsigned commits that need signing before merge.
rippled — ProposalCreate (Cosign Part 1) (rippled#8205, +3,695/−4, 28 files) — Implements the TransactionProposalCreate transaction per the Onchain Cosigner spec (XRPL-Standards#613). Approved, but has merge conflicts to resolve.
rippled — Mirror key epochs for confidential MPTs (rippled#8210, +1,107/−24, 14 files) — Supports key rotation in confidential MPT transactions. Approved by the AI reviewer; awaiting human review.
rippled — Preflight helper functions refactor (rippled#7810, +165/−69, 38 files) — Extracts common preflight-check patterns into shared helpers. Approved by 2 reviewers across multiple passes.
xrpl.js — LendingProtocolV1_1 support (xrpl.js#3456, +685/−5, 15 files) — Adds client models for close-ended vaults, credential-gated withdrawals, and updated loan operations. Approved. Beta releases (xrpl@5.2.0-beta.0 and beta.1) were published with this feature included.
xrpl-py — fixCleanup3_4_0 signing prefixes (xrpl-py#1036, +408/−314, 12 files) — Mirrors the xrpl.js signing prefix work for Python. Approved by 2 reviewers.
xrpl-py — LendingProtocolV1_1 support (xrpl-py#1034, +1,151/−322, 21 files) — Approved by 3 reviewers. Awaiting merge and release.
xrpl4j — Counterparty/Sponsor signing prefixes (xrpl4j#834, +558/−176, 12 files) — Implements fixCleanup3_4_0 role-specific signing for Java. Approved by 3 reviewers.
xrpl4j — Single Asset Vault model changes (xrpl4j#832, +1,094/−25, 21 files) — Adds VaultDelete.MemoData, deposit-blocking flags, and new vault flags. Approved by 2 reviewers.
Clio — Handler migration batch A (clio#3206, +60/−658, 15 files) — Continues migrating handlers to the shared rpc-spec, removing ~600 lines.
XRPL-Standards — Onchain Cosigner spec (XRPL-Standards#613, +1,205 lines) — Approved by the AI reviewer. Author reports comments are resolved and it's ready to merge.
xrpl-dev-portal — LendingProtocolV1_1 docs migration from opensource (xrpl-dev-portal#3923, +427/−160, 30 files) — Migrates lending docs to xrpl.org.
xrpl@5.2.0-beta.0/beta.1 and xrpl-py v5.2.0b0). Stable releases will let application developers build against close-ended vaults and updated loan operations. The Java SDK (xrpl4j#832) is also approved and in progress.IOU amount parsing bug reported and fix opened — Community member @markneonin reported (rippled#8188) that IOU amounts above INT64_MAX silently wrap due to an unchecked static_cast, and that negative values can be accepted as positive in some cases (e.g., a -1000 trust line limit being accepted). They also opened a fix (rippled#8190, +137/−0) with range-checking before the cast. The PR needs signed commits before it can merge.
Secret masking in batch RPC errors — Community member @joshuahamsa opened rippled#8219 to mask sensitive fields (secret, seed, seed_hex, passphrase) in HTTP batch RPC error responses, closing rippled#7461. The PR adds recursive masking across nested objects and arrays.
LoadManager fee adjustment fix gaining traction — rippled#8039 by community member @rippleitinnz continues to draw review activity. A core team member (@nbougalis) confirmed the fix is correct but raised concerns about lock ordering. Community member @dangell7 added context that the bug is worse than described — localTxnLoadFee_ never changed on a live node, meaning isLoadedLocal() was always false. Community member @shortthefomo noted the bug's visibility during recent network load spikes.
TOML checker crash fix — Community member @chiliec opened xrpl-dev-portal#3924 to fix the TOML Checker crashing when a domain has no valid xrp-ledger.toml, closing xrpl-dev-portal#3793.
Community library listing — @Bristlecone2026 opened xrpl-dev-portal#3919 to add bristlecone-x402, a Python client for x402 HTTP micropayments and off-chain PaymentChannelClaim verification.
xrpl.js security vulnerability issues — Multiple automated issues were opened this week flagging CRITICAL/HIGH vulnerabilities in xrpl@5.2.0, ripple-binary-codec@2.11.0, and ripple-keypairs@3.1.0 (among others) by the release pipeline's vulnerability scanner.
Vault deposit blocking discussion — On XRPL-Standards#469, community member @dangell7 raised concerns about vault operators being able to unilaterally block deposits without governance or investor consent, drawing parallels to regulatory issues in traditional finance. The spec author responded that the flag is opt-in and visible on-chain at creation time.
Compared to last week (August 31 – September 6, 2026):
| Metric | This Week | Last Week | Change |
| Repos with activity | 8 | 8 | flat |
| rippled PRs merged | 13 | 29 | ↓16 |
| rippled PRs opened | 24 | 25 | ↓1 |
| rippled new issues | 1 | 1 | flat |
| rippled closed issues | 0 | 6 | ↓6 |
| rippled releases | 0 | 0 | flat |
| rippled commits | 6 | 26 | ↓20 |
| xrpl.js PRs merged | 4 | 0 | ↑4 |
| xrpl.js PRs opened | 4 | 7 | ↓3 |
| xrpl.js new issues | 9 | 0 | ↑9 |
| xrpl.js releases | 7 | 0 | ↑7 |
| xrpl-py PRs merged | 1 | 0 | ↑1 |
| xrpl-py PRs opened | 3 | 1 | ↑2 |
| xrpl-py new issues | 1 | 0 | ↑1 |
| xrpl-py releases | 1 | 0 | ↑1 |
| xrpl-dev-portal PRs merged | 8 | 9 | ↓1 |
| xrpl-dev-portal PRs opened | 7 | 14 | ↓7 |
| xrpl-dev-portal new issues | 1 | 2 | ↓1 |
| xrpl-dev-portal closed issues | 1 | 0 | ↑1 |
| xrpl-dev-portal commits | 19 | 28 | ↓9 |
| Clio PRs merged | 8 | 1 | ↑7 |
| Clio PRs opened | 3 | 4 | ↓1 |
| Clio new issues | 1 | 0 | ↑1 |
| Clio releases | 2 | 2 | flat |
| Clio commits | 8 | 1 | ↑7 |
| XRPL-Standards PRs merged | 10 | 8 | ↑2 |
| XRPL-Standards PRs opened | 27 | 17 | ↑10 |
| XRPL-Standards new issues | 0 | 1 | ↓1 |
| XRPL-Standards closed issues | 4 | 1 | ↑3 |
| XRPL-Standards commits | 10 | 10 | flat |
| xrpl4j PRs merged | 1 | 0 | ↑1 |
| xrpl4j PRs opened | 3 | 2 | ↑1 |
| xrpl4j closed issues | 1 | 0 | ↑1 |
| opensource.ripple.com PRs merged | 2 | 2 | flat |
| opensource.ripple.com commits | 8 | 3 | ↑5 |
| Total PRs merged (all repos) | 47 | 49 | ↓2 |
| Total releases | 10 | 2 | ↑8 |
Carryovers from last week: The Clio dual dispatch path (clio#3198) and first handler migrations (clio#3199), both listed as "In Progress" last week, merged this week — Clio went from 1 merge last week to 8 this week. The xrpl.js LendingProtocolV1_1 PR (xrpl.js#3456) and xrpl-py counterpart (xrpl-py#1034), noted as near-merge last week, are still in progress but beta releases shipped. Trends: rippled merge volume dropped (13 vs 29) as post-rc1 activity stabilizes. SDK activity surged with 7 xrpl.js releases (from 0 last week) including the stable 5.2.0. XRPL-Standards remained highly active at 10 merges, continuing last week's spec alignment push. Clio's rpc-spec migration gained momentum with the foundational PRs landing.