DEV Community

Ramkumar SG for RippleX Developers

Posted on

Account Permission Delegation - QA Test Report

Test Report Date: 8/26/2026
Prepared By: QA Team [sgramkumar, mkunasani, manasip-prog]
Environment: GitLab CI Runner (nix-debian)
Network: xrpld devnet + private CI network

Overview
This report presents the updated results of QA testing performed on Account Permission Delegation across xrpld servers. It supersedes the initial report from May 2025, reflecting the substantial expansion of test coverage that has occurred as the feature evolved through follow-up xrpld changes.

1. Feature

Feature Name: Account Permission Delegation

Description: Prior to this feature, critical issuer actions — such as authorizing trustlines — required direct control by the account's own keys, hindering operational efficiency and complex use cases. Account Permission Delegation empowers account holders to selectively delegate specific permissions to other accounts, enhancing account usability without compromising security. This mechanism unlocks new possibilities for XRPL applications, including multi-party workflows and advanced account management strategies.

Specification Reference: https://github.com/XRPLF/XRPL-Standards/tree/master/XLS-0075-permission-delegation

2. Test Scope

This report covers the full delegation surface as it stands after the follow-up xrpld changes (PRs #6126, #7064, #7584, #7640). Testing focused on ensuring that:

  • All specified functionalities behave per the XLS-0075 specification
  • The API handles both valid and invalid input gracefully
  • Delegated transactions interact correctly with adjacent features (Batch, Confidential MPT, transaction queue, multi-signing)
  • Security-critical properties hold under adversarial input, including permission-escalation attempts via flag/field side-channels
  • Behavior is consistent across both RPC and WebSocket interfaces

3. Types of Testing Conducted

Testing Type Description
Functional Verifying each transaction, permission grant, and RPC path against the feature specification
Regression Running full xrpld test suites to confirm delegation changes did not break existing functionality
Adversarial / Security Attack-matrix scenarios probing self-delegation, permission-scope escalation, flag/field smuggling, granular-permission union semantics, and revocation edge cases
Cross-Feature Interactions between Delegation and Batch (XLS-56), Confidential MPT, the transaction queue, and multi-signing
End-to-End Full flows spanning delegation setup, delegated submission, revocation, and downstream validation via xrpld

4. Test Results Summary

Testing Type Total Tests
Permission Delegation — Core Functional 112
Permission Delegation — Adversarial / Security 48
Permission Delegation — Cross-Feature (Batch, Confidential MPT, TxQ) 19
Permission Delegation — Total 179
Regression — xrpld (full suite) 5,088

Testcases: https://dev.to/ripplexdev/account-permission-delegation-testcases-3j0b

Feature commit history:

- Introduced as `PermissionDelegation` in PR #5354 (2db2791805, 2025-05-08)
- Marked unsupported (2ae65d2fdb, 2025-09-18) pending security fix
- Renamed to `PermissionDelegationV1_1` with security fix in PR #5825
  (fa69918124, 2025-10-31)
- Re-supported (`Supported::Yes`) in PR #6613 (772ea80a25, 2026-06-17)

Enter fullscreen mode Exit fullscreen mode

Related xrpld changes covered in this round:

  • PR #5354 — Initial PermissionDelegation feature
  • PR #5650fixDelegateV1_1 — restrictions on Permission Delegation
  • PR #5825 — Security vulnerability fix + rename to PermissionDelegationV1_1
  • PR #6126account_tx delegate filter parameter
  • PR #6729 — Delegation tests for Confidential Transfers
  • PR #6808 — Confidential delegation tests with tickets

5. Bugs Reported

All Internal bugs are fixed and there are no Critical Open bugs

6. Conclusion

Account Permission Delegation has now been exercised across 179 dedicated tests spanning core functional coverage, adversarial / security scenarios, and cross-feature interactions — a substantial expansion from the 66 tests reported at initial feature landing. In addition, the full xrpld (5,088) regression suites have been executed to confirm no downstream breakage.

All security-critical properties documented in XLS-0075 have been validated, including:

  • Correct rejection of self-delegation, unknown permissions, and NotDelegable transaction types
  • Enforcement of granular-permission field/flag restrictions with no side-channel escalation via SetFlag / ClearFlag or restricted-field assignment
  • Correct interaction with the transaction queue (delegated transactions cannot queue — PR #7640)
  • Correct account_tx attribution semantics under regular-key and multi-sign paths (PR #6126)
  • Independence of delegation from asfDisableMaster (delegated payments continue to work after the master key is disabled)
  • The feature is considered ready for production use at the tested commit level. Future updates to this report will follow any material additions to the delegation surface.

Top comments (0)