Pratik Mankawde
7c8a3906a1
refactor(telemetry): replace per-category factory methods with TraceCategory enum
...
Replace rpcSpan(), txSpan(), consensusSpan(), peerSpan(), ledgerSpan()
with a single span(TraceCategory, prefix, name) factory method. Adding
a new traceable subsystem now requires only a new enum value and one
switch case — no new methods or header changes.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-17 17:40:37 +01:00
Pratik Mankawde
ad233846fa
fix(telemetry): address Phase 1b code review findings
...
- SpanContext::isValid(): add inline no-op when XRPL_ENABLE_TELEMETRY
is not defined, preventing a linker error if called in that path
- linkedSpan(): set kIsRootSpanKey on the StartSpanOptions parent
context so linked spans start a genuinely independent sub-tree
instead of silently becoming children of the current active span
- Telemetry::instance_: use std::atomic with acquire/release ordering
to avoid a data race between start()/stop() and factory methods
called from worker threads
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-17 17:15:36 +01:00
Pratik Mankawde
714ac49f47
fix(telemetry): address Phase 1b code review findings
...
Redesign SpanGuard with pimpl idiom to hide all OpenTelemetry types
from public headers. Add global Telemetry accessor so SpanGuard factory
methods work without explicit Telemetry references. Add child/linked
span creation and cross-thread context propagation. Update plan docs
to reflect macro removal in favor of SpanGuard factory pattern.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-17 16:31:50 +01:00
Pratik Mankawde
0de5a77605
feat(telemetry): add FilteringSpanProcessor and SpanGuard::discard()
...
Add span discard mechanism that drops unwanted spans before they enter
the batch export queue, saving both network bandwidth and storage.
FilteringSpanProcessor is a custom SpanProcessor decorator that wraps
BatchSpanProcessor. SpanGuard::discard() sets a thread-local flag
(tl_discardCurrentSpan) before calling Span::End(). The OTel SDK calls
OnEnd() synchronously on the same thread, where the flag is checked and
cleared to drop the span.
New file: DiscardFlag.h — zero-dependency header for the thread-local
flag, avoiding transitive include bloat from Telemetry.h.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-16 17:43:58 +01:00
Pratik Mankawde
4830715d57
fix(telemetry): address review findings and PR #6437 comments
...
Critical fixes:
- Restore accidentally removed mallocTrim call and MallocTrim.h include
- Add missing shouldTraceLedger() to interface and all implementations
- Derive networkId/networkType from config_->NETWORK_ID (0=mainnet,
1=testnet, 2=devnet) instead of leaving defaults unpopulated
- Clamp sampling_ratio to [0.0, 1.0] in config parser
PR comment fixes:
- Rename rippled -> xrpld in service name defaults, getTracer() calls,
Docker network, comments, and docs/build/telemetry.md
- Remove exporter config option (only otlp_http supported)
- Add trace_ledger and service_name to example config
- Clarify head-based sampling semantics in config comments
- Add filter descriptions for span intrinsic filters in Grafana datasource
- Add inline comments to Docker Compose services
Docker/config improvements:
- Remove deprecated version: "3.8" from docker-compose.yml
- Pin images: collector 0.121.0, grafana 11.5.2
- Add health_check extension to otel-collector-config.yaml
- Comment out Tempo metrics_generator remote_write (no Prometheus service)
- Add Prometheus datasource caveat in Grafana datasource config
Other:
- Revert unrelated formatting changes in ServiceRegistry.h
- Change Conan telemetry default to False (matches CMake OFF)
- Add CLAUDE.md-required docs (ASCII diagrams, usage examples,
@note thread-safety) to Telemetry.h and SpanGuard.h
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-16 17:07:01 +01:00
Pratik Mankawde
ce82e067bd
Phase 1b: Telemetry core infrastructure - CMake, Conan, SpanGuard, config
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-16 15:37:58 +01:00
Sergey Kuznetsov
d52d735543
chore: Move codegen venv setup into build stage ( #6617 )
...
Co-authored-by: JCW <a1q123456@users.noreply.github.com >
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-04-15 18:50:49 +00:00
Alex Kremer
6a0ce46755
chore: Enable most clang-tidy bugprone checks ( #6929 )
...
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-04-14 20:24:21 +00:00
Bart
2f029a2120
refactor: Improve exception handling ( #6540 ) ( #6735 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-04-14 17:14:24 +00:00
Zhiyuan Wang
61fbde3a71
refactor: Remove unused notTooManyOffers function from NFTokenUtils ( #6737 )
2026-04-13 23:18:10 +00:00
Bart
e2e537b3bb
fix: Change Tuning::bookOffers minimum limit to 1 ( #6812 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-04-10 14:38:46 +00:00
Gregory Tsipenyuk
56c9d1d497
fix: Add description for terLOCKED error ( #6811 )
2026-04-08 20:56:19 +00:00
yinyiqian1
d52dd29d20
fix: Address AI reviewer comments for Permission Delegation ( #6675 )
2026-04-08 20:22:19 +00:00
Mayukha Vadari
7793b5f10b
refactor: Combine AMMHelpers and AMMUtils ( #6733 )
2026-04-08 17:38:33 +00:00
Gregory Tsipenyuk
dfcad69155
feat: Add MPT support to DEX ( #5285 )
2026-04-08 16:17:37 +00:00
Pratik Mankawde
6d1a5be8d2
fix: Handle WSClient write failure when server closes WebSocket ( #6671 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-07 19:15:40 +00:00
Bart
c00ed673a8
refactor: Rename non-functional uses of ripple(d) to xrpl(d) ( #6676 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-04-07 13:00:17 +00:00
Mayukha Vadari
f239256d87
refactor: Move more helper files into libxrpl/ledger/helpers ( #6731 )
...
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
2026-04-06 22:36:32 +00:00
Mayukha Vadari
00761dbb67
fix: Minor RPC fixes ( #6730 )
2026-04-06 22:15:16 +00:00
Zhiyuan Wang
077e03ff33
fix: Prevent deletion of MPTokens with active escrow ( #6635 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-04-06 17:51:46 +00:00
Vito Tumas
7d524a03b8
fix: Clamp VaultClawback to assetsAvailable for zero-amount clawback ( #6646 )
2026-04-06 15:13:03 +00:00
Vito Tumas
c0ee813666
fix: Add assorted Lending Protocol fixes ( #6678 )
...
Co-authored-by: Shawn Xie <35279399+shawnxie999@users.noreply.github.com >
2026-04-03 17:41:45 +00:00
Mayukha Vadari
8e05416211
fix: Change variable signedness and correctly handle std::optional ( #6657 )
2026-04-03 15:16:50 +00:00
Mayukha Vadari
81555d5456
refactor: Reorganize RPC handler files ( #6628 )
2026-04-02 23:46:17 +00:00
yinyiqian1
3414a1776b
docs: Add explanatory comment to checkFee ( #6631 )
2026-04-02 20:48:35 +00:00
yinyiqian1
6d9ed125f3
fix: Decouple reserve from fee in delegate payment ( #6568 )
2026-04-02 20:48:00 +00:00
Vito Tumas
02fa55df8d
fix: Check trustline limits for share-denominated vault withdrawals ( #6645 )
2026-04-01 19:31:45 +00:00
Valentin Balaschenko
6e2452207d
fix: Remove fatal assertion on Linux thread name truncation ( #6690 )
2026-04-01 16:56:45 +00:00
Alex Kremer
29e49abd3c
chore: Enable clang-tidy coreguidelines checks ( #6698 )
...
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-04-01 15:46:14 +00:00
Vito Tumas
bee1056faa
fix: Enforce aggregate MaximumAmount in multi-send MPT ( #6644 )
...
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
2026-04-01 13:35:13 +00:00
Mayukha Vadari
a9afd2c116
fix: Fix previous ledger size typo in RCLConsensus ( #6696 )
2026-03-31 19:56:30 +00:00
Alex Kremer
2502befb42
chore: Enable clang-tidy misc checks ( #6655 )
2026-03-31 17:29:45 +00:00
Bart
7f53351920
chore: Remove unnecessary clang-format off/on directives ( #6682 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-03-31 15:38:04 +00:00
Pratik Mankawde
bb95a7d6cd
fix: Fix Workers::stop() race between m_allPaused and m_runningTaskCount ( #6574 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-31 15:06:04 +00:00
Alex Kremer
ab8c168e3b
chore: Enable remaining clang-tidy performance checks ( #6648 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-30 17:08:47 +00:00
Jingchen
3a477e4d01
refactor: Address PR comments after the modularisation PRs ( #6389 )
...
Signed-off-by: JCW <a1q123456@users.noreply.github.com >
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-03-30 15:22:38 +00:00
Vito Tumas
9b944ee8c2
refactor: Split LoanInvariant into LoanBrokerInvariant and LoanInvariant ( #6674 )
2026-03-27 18:35:42 +00:00
Jingchen
addc1e8e25
refactor: Make function naming in ServiceRegistry consistent ( #6390 )
...
Signed-off-by: JCW <a1q123456@users.noreply.github.com >
Co-authored-by: Ed Hennis <ed@ripple.com >
2026-03-26 14:11:16 +00:00
Valentin Balaschenko
faf69da4b0
chore: Shorten job names to stay within Linux 15-char thread limit ( #6669 )
2026-03-26 14:10:51 +00:00
Vito Tumas
76e3b4fb0f
fix: Improve loan invariant message ( #6668 )
2026-03-26 12:40:26 +00:00
Jingchen
8f182e825a
refactor: Modularise ledger ( #6536 )
...
Signed-off-by: JCW <a1q123456@users.noreply.github.com >
Co-authored-by: Bart <bthomee@users.noreply.github.com >
Co-authored-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-03-25 16:32:45 +00:00
Mayukha Vadari
2c7af360c2
fix: Remove unused/unreachable transactor code ( #6612 )
2026-03-25 16:02:14 +00:00
Alex Kremer
403fd7c649
fix: More clang-tidy issues found after merging to develop ( #6640 )
...
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-03-25 14:28:28 +00:00
Jingchen
4096623ae1
chore: Remove the forward declarations that cause build errors when unity build is enabled ( #6633 )
...
Signed-off-by: JCW <a1q123456@users.noreply.github.com >
2026-03-24 23:00:41 +00:00
Mayukha Vadari
85a4015a64
fix: Assorted Permissioned Domain fixes ( #6587 )
2026-03-24 18:53:57 +00:00
Mayukha Vadari
f7bb4018fa
fix: Assorted Vault fixes ( #6607 )
2026-03-24 18:53:49 +00:00
Alex Kremer
0eedefbf45
refactor: Enable more clang-tidy readability checks ( #6595 )
...
Co-authored-by: Sergey Kuznetsov <kuzzz99@gmail.com >
2026-03-24 15:42:12 +00:00
Mayukha Vadari
8b986e4ab0
refactor: Improve imports to only call the needed helpers ( #6624 )
2026-03-24 10:20:32 +00:00
Olek
dcfcdab14e
fix: Remove superfluous view update from credentials ( #6545 )
2026-03-23 18:29:34 +00:00
Mayukha Vadari
e0dbe90370
refactor: Move ledger entry helper functions from View.h/View.cpp to dedicated helper files ( #6453 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-23 15:39:58 +00:00