XRPL Developments Weekly Summary
September 28 – October 4, 2026

TL;DR

A prolific week across the ecosystem: rippled merged 44 PRs to develop, headlined by the Cosign v1 amendment implementation (XLS-103), a confidential MPT holder key update feature, an MPT transaction stream for the subscribe RPC, and a massive CamelCase typedef enforcement sweep across 943 files. xrpl.js shipped four releases — xrpl@4.7.0, xrpl@3.2.0, ripple-keypairs@2.1.0, and ripple-keypairs@1.4.0 — all carrying an entropy validation fix for Wallet.fromEntropy and generateSeed. Clio merged 11 PRs including an account_objects pagination fix and rpc-spec conformance updates. The developer portal merged 8 PRs consolidating Deep Freeze docs, updating OS support requirements, and continuing wiki migration.

Summary

This was one of the more productive weeks across the XRP Ledger's open-source repositories, with 74 pull requests merged — up from 58 last week. The headline is a new on-chain feature called "Cosign" (formally XLS-103), which was merged into the development branch of rippled (the core server software). Cosign introduces a new way for multiple parties to propose and approve transactions directly on the ledger, rather than coordinating off-chain. It's now in the development pipeline but won't reach the live network until a future tagged release ships.

The JavaScript library (xrpl.js) published four new versions — xrpl 4.7.0, xrpl 3.2.0, ripple-keypairs 2.1.0, and ripple-keypairs 1.4.0 — all fixing a subtle but important bug where the Wallet.fromEntropy function could silently accept invalid input (like a text string) and generate real-looking but compromised wallets. Developers using any version of xrpl.js should update to the latest release in their version line. Several smaller but significant fixes also landed: the Clio API server fixed a bug where requesting an account's objects with a type filter still scanned through all NFT pages unnecessarily (wasting time), and the developer portal at xrpl.org consolidated its documentation about "Deep Freeze" (a way to permanently lock a token's frozen state) into a single, clearer page.

Behind the scenes, the codebase saw major housekeeping. A sweep of 943 files enforced consistent naming conventions for type aliases across rippled, while another PR documented every declaration in the LedgerMaster class — the component responsible for tracking which ledgers have been validated, published, and made available for history. These kinds of changes don't affect users directly but make the code more maintainable and easier for new contributors to understand. Multiple fixes also landed for Multi-Purpose Tokens (MPTs), improving arithmetic precision, fixing deletion edge cases, and adding a new subscription stream so applications can monitor MPT activity in real time. The Python SDK has a large, approved PR adding MPT DEX support that should land soon, and the Java SDK has an approved PR adding vault support — both pending final merge and release.

For the latest, follow @XRPLF and @RippleXDev on X. Check the XRPLF repos for full activity.


What Merged

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.

Protocol & Feature Work (rippled — merged to develop)

Bug Fixes & Stability (rippled — merged to develop)

Refactoring & Architecture (rippled — merged to develop)

Dependencies & Build (rippled — merged to develop)

CI & Docs (rippled — merged to develop)

Clio (API Server)

Developer Portal (xrpl-dev-portal)

XRPL-Standards

JavaScript SDK (xrpl.js — merged to main)

Four releases shipped this week, all carrying a fix that throws on invalid entropy in Wallet.fromEntropy and generateSeed:

Additionally, the 1.x backport xrpl.js#3489 merged, requiring exactly 16 bytes of entropy in generateAddress.

A community contributor's fix requiring the sponsor of a sponsored inner transaction to sign a Batch (XLS-56) also merged: xrpl.js#3483 (+101/−3) — merged, pending release.


In Progress

rippled — IOU rounding in Clawback invariant (rippled#8475, +101/−1) — The ValidClawback invariant now compares against the same rounded subtraction the actual balance update performs. Approved by AI reviewer; in active review.

rippled — MPT/DEX offer fixes (rippled#8468, +192/−17) — Handles exceptions from consumeOffer in BookStep and rejects issuer-sourced strands looping back to their own MPT. Approved by 2 reviewers.

rippled — Reject VaultClawback with nonexistent holder (rippled#8470, +83) — Gated on fixCleanup3_5_0. Approved by AI reviewer.

rippled — Detect int64 overflow in XRPAmount and MPTAmount (rippled#8453, +426/−56) — Replaces raw signed arithmetic with checked helpers under featureMPTokensV2. Approved by 2 reviewers; has outstanding Copilot comments.

rippled — Replace node_size with memory_limit (rippled#7965, +903/−205, 17 files) — Replaces the opaque [node_size] config with a GB-denominated [memory_limit] that auto-detects available RAM. Approved by AI reviewer; under active review.

rippled — Report rejected config section instead of aborting (rippled#8473, +15/−4) — Prints a message to stderr instead of crashing when a config section is rejected. Approved by AI reviewer.

rippled — Record Batch inner results for validated ledgers (rippled#8164, +403/−27) — Records each inner transaction's outcome and surfaces them via the tx RPC. Approved by 2 reviewers.

rippled — Increase default WebSocket send_queue_limit (rippled#8465, +10/−5) — A community member proposes raising the default from 100 to 1,000 to prevent disconnects during busy ledger closes. Has unsigned commits.

rippled — SHAMapAddNode verdict as counts (rippled#8080, +237/−26) — Part 1 of a 28-PR stack adding getBad() and getDuplicate() accessors. Approved by AI reviewer.

xrpl4j — Single Asset Vault model changes (xrpl4j#832, +2,022/−31, 35 files) — Adds LendingProtocolV1_1 vault transaction/object models. Approved — close to merging.

xrpl-py — MPT DEX support (XLS-82) (xrpl-py#1043, +1,792/−52, 34 files) — Adds MPTokensV2 amendment models. Approved by AI reviewer.

Clio — Wire format regression fix (clio#3242, +92/−2) — Fixes get_aggregate_price returning oracleMalformed instead of invalidParams for invalid oracle_document_id. Closes clio#3241.

Clio — Reject CTID network IDs above 16 bits (clio#3232, +42/−4) — Prevents truncation of 32-bit network IDs into misleading CTIDs. Has a dismissed review with requested clang-tidy fix.

XRPL-Standards — XLS-65.4 Vault Donation (XRPL-Standards#648, +169/−7) — Specifies tfVaultDonate flag on VaultDeposit under LendingProtocolV1_2.

opensource.ripple.com — Smart Escrow reference docs (#240, +623/−1) — Adds reference doc pages for XLS-100 Smart Escrows and Fee Voting. Has changes requested from a reviewer.


What to Watch Next Week


Community & Discussions

Community contributions: A community member submitted rippled#8465 proposing to increase the default WebSocket send_queue_limit from 100 to 1,000, noting that the current limit causes disconnects during busy ledger closes for clients subscribing to the transaction stream. The PR has had two rounds of review but contains unsigned commits. Community contributor @Platonenkov landed a Batch sponsor-signing fix in xrpl.js (xrpl.js#3483). Community contributor @GautamBytes landed the account_objects NFT page skip fix in Clio (clio#3231).

External contributor on dev portal: @RyanHealey updated Docker image references from the deprecated xrpllabsofficial/xrpld to rippleci/xrpld (xrpl-dev-portal#3959), and @chiliec fixed the TOML checker crash (xrpl-dev-portal#3924).

Automated vulnerability scans: The xrpl.js release pipeline flagged critical/high vulnerabilities in the newly released packages (#3528, #3526, #3525, #3524, #3523) — all automatically generated and awaiting review.

New issues: A proposed terminology change was filed (rippled#8472) asking whether wiki content suggesting renaming "Consensus Process" to "Election" is still relevant. A corrupt NuDB node object crash-loop issue was reported (rippled#8343), where a single corrupt LZ4-compressed object causes repeated aborts instead of graceful handling. In Clio, a compatibility issue was filed for get_aggregate_price error mismatches between Clio and xrpld (clio#3241).

XRPL-Standards activity: Multiple lending protocol spec proposals remain in review, including XLS-65.4 Vault Donation (XRPL-Standards#648), two-step loan creation (XRPL-Standards#570), Vault deposit block (XRPL-Standards#469), and Token PayChan XLS-93 (XRPL-Standards#536).


By the Numbers

Compared to last week (September 21–27, 2026):

MetricThis WeekLast WeekChange
Repos with activity88flat
rippled PRs merged4426↑18
rippled PRs opened1324↓11
rippled new issues33flat
rippled closed issues42↑2
rippled releases00flat
rippled commits3113↑18
xrpl.js PRs merged105↑5
xrpl.js PRs opened238↑15
xrpl.js new issues63↑3
xrpl.js closed issues11flat
xrpl.js releases42↑2
xrpl.js commits15↓4
xrpl-py PRs merged01↓1
xrpl-py PRs opened161↑15
xrpl-py new issues00flat
xrpl-py releases00flat
xrpl-py commits01↓1
xrpl-dev-portal PRs merged813↓5
xrpl-dev-portal PRs opened109↑1
xrpl-dev-portal new issues21↑1
xrpl-dev-portal closed issues10↑1
xrpl-dev-portal commits931↓22
Clio PRs merged118↑3
Clio PRs opened28↓6
Clio new issues22flat
Clio closed issues20↑2
Clio releases14↓3
Clio commits115↑6
XRPL-Standards PRs merged12↓1
XRPL-Standards PRs opened116↑5
XRPL-Standards commits12↓1
xrpl4j PRs merged02↓2
xrpl4j PRs opened15↓4
xrpl4j releases01↓1
xrpl4j commits02↓2
opensource.ripple.com PRs merged01↓1
opensource.ripple.com PRs opened20↑2
Total PRs merged (all repos)7458↑16
Total releases57↓2

Carryovers from last week: Several items noted as "In Progress" last week merged this week: the Cosign v1 TransactionProposalCreate (rippled#8205), the LedgerMaster documentation (rippled#8160), the account_lines/offers/channels pagination fix (rippled#8274), the rpc-spec initial integration (rippled#8284), the Clio rpc-spec 0.1.19 conformance (clio#3233), and the xrpl.js entropy validation backports across all four maintenance lines. The xrpl4j vault model PR (xrpl4j#832) remains open but approved.

Trends: rippled's merge rate nearly doubled again (26→44), driven by the Cosign v1 branch integration, a wave of smart escrow/WASM host-call fixes, and MPT-related improvements. xrpl.js saw a surge in opened PRs (8→23), mostly from Dependabot, alongside its busiest release week with 4 tagged versions. xrpl-py opened 16 dependency PRs (up from 1) while its MPT DEX feature PR went through review. Total merged PRs across all repos rose 28% (58→74).

Generated on October 4, 2026 at 05:40 AM UTC using claude-opus-4-6