Pratik Mankawde
4e9b2f23d6
Merge branch 'pratik/otel-phase2-rpc-tracing' into pratik/otel-phase3-tx-tracing
...
# Conflicts:
# include/xrpl/telemetry/SpanGuard.h
# src/libxrpl/telemetry/SpanGuard.cpp
# src/libxrpl/tx/applySteps.cpp
2026-07-20 12:03:57 +01:00
Pratik Mankawde
d7a014ae95
Merge branch 'pratik/otel-phase1c-rpc-integration' into pratik/otel-phase2-rpc-tracing
2026-07-20 11:50:55 +01:00
Pratik Mankawde
c1e3348c50
fix(telemetry): root and detach the RipplePathFind span held across coro yield
...
doRipplePathFind holds its pathfind.request span across context.coro->yield();
the coroutine resumes on a different JobQueue worker. rootSpan() gives it a
fresh trace root (no stale ambient parent), and detached() strips the
thread-local Scope so the guard neither lingers on the worker's context stack
across the yield nor pops the wrong stack on resume.
Adds SpanGuardScope.cpp: an in-memory-exporter test for rootSpan()/detached()
including the rootSpan().detached() combination used here.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-17 23:06:43 +01:00
Pratik Mankawde
6c4e0e6ed4
fix(telemetry): detach tx.receive and tx.process spans before job hand-off
...
Both spans are moved into job-queue lambdas and destroyed on a worker
thread. Detaching on the origin thread pops the thread-local OTel Scope
there, so later spans on the peer/RPC thread no longer inherit these as a
leaked ambient parent. Trace_id/parent are unchanged (both are hashSpan).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-17 22:24:38 +01:00
Pratik Mankawde
57efffff44
ci(telemetry): teach otel-naming checker the SpanGuard::rootSpan factory
...
rootSpan has the same (cat, prefix, name) signature as span(), so its
prefix/name arguments must be *SpanNames.h constants under Rule F/H. Add
rootSpan to the CALLSITE regex and CONSTANT_ARG_POSITIONS ({1,2}), update
the enumerating docstrings/README, and add two regression tests.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-17 22:12:42 +01:00
Pratik Mankawde
2eadc6fd5a
Merge branch 'pratik/otel-phase1b-telemetry-infra' into pratik/otel-phase1c-rpc-integration
2026-07-17 22:12:09 +01:00
Pratik Mankawde
2aeea61964
docs(telemetry): use SpanNames constants (not literals) in SpanGuard @code examples
...
The otel-naming Rule F check scans @code doc examples as call sites; raw
string literals there trip the rule. Reference *SpanNames.h constants /
placeholder identifiers in the examples so comments follow the naming rules.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-17 22:11:24 +01:00
Pratik Mankawde
98a2ad19fd
Merge branch 'pratik/otel-phase1b-telemetry-infra' into pratik/otel-phase1c-rpc-integration
...
# Conflicts:
# include/xrpl/telemetry/SpanGuard.h
2026-07-17 19:45:15 +01:00
Pratik Mankawde
4f9650502b
feat(telemetry): add SpanGuard::detached() and rootSpan() to fix cross-thread scope leak
...
detached() strips the thread-local OTel Scope so a guard can be safely
moved to and destroyed on another thread; it pops the Scope on the origin
thread and moves the span into a scope-less guard. rootSpan() starts a span
as a fresh trace root (kIsRootSpanKey) so inbound entry points never inherit
an ambient span left active on the thread.
Impl now holds an optional<Scope> (nullopt for detached guards). Updated the
SpanGuard class docs and docs/build/telemetry.md with the cross-thread rules.
The unit test lands on phase2 where the telemetry test module exists.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-17 19:42:44 +01:00
Pratik Mankawde
7be57a460b
Merge branch 'pratik/otel-phase1a-plan-docs' into pratik/otel-phase1b-telemetry-infra
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-07-17 14:27:46 +01:00
Pratik Mankawde
4d64d3215d
updates to node-health
...
Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com >
2026-07-17 14:26:27 +01:00
Vito Tumas
5ce0b1c2c7
refactor: Restructure LendingHelpers to improve readability ( #7807 )
2026-07-16 15:47:56 +00:00
Andrzej Budzanowski
701311f27e
test: Add google benchmark dependency and migrate nodestore timing test as a benchmark ( #7317 )
...
Co-authored-by: Marek Foss <marek.foss@neti-soft.com >
Co-authored-by: Alex Kremer <akremer@ripple.com >
2026-07-16 15:44:43 +00:00
Sergey Kuznetsov
b1a670c46e
ci: Add Rust to CI ( #7808 )
...
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-07-16 15:28:04 +00:00
Bart
18e311e1e2
chore: Bump version to 3.3.0-rc1 ( #7806 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
3.3.0-rc1
2026-07-16 13:54:12 +00:00
Denis Angell
69b70d7a0d
fix: Refactor Batch Transaction IDs ( #7736 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Mayukha Vadari <mvadari@ripple.com >
2026-07-16 13:15:59 +00:00
Mayukha Vadari
b42cde3e85
refactor: Remove redundant enable checks in ConfidentialMPT txs ( #7809 )
2026-07-16 09:51:19 +00:00
Peter Chen
cd38c0e800
chore: Update mpt-crypto-lib to 0.4.0-rc4 ( #7813 )
2026-07-15 23:47:22 +00:00
Vlad
433e5f6896
fix: Reject zero CheckID in CheckCancel and CheckCash ( #7685 )
2026-07-15 22:08:45 +00:00
Ayaz Salikhov
781ab723af
ci: Fix workflow launch on matrix-unrelated labels ( #7812 )
2026-07-15 18:24:31 +00:00
Ed Hennis
a24e543af3
fix: Allocate TaggedCache::getKeys() memory outside of lock ( #7567 )
...
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
2026-07-15 13:30:20 +00:00
Sophia Xie
a0fd1cce54
fix: Re-store nodes missing from both backends during online_delete rotation ( #7763 )
...
Co-authored-by: Valentin Balaschenko <13349202+vlntb@users.noreply.github.com >
2026-07-14 23:42:40 +00:00
Kassaking7
cda63d00a2
fix: Add amendment sponsor for AccountRootsDeletedClean ( #7801 )
2026-07-14 19:41:53 +00:00
Ed Hennis
530e09dbe8
fix: Update base_uint and test changes released in 3.1.3 ( #7570 )
...
Co-authored-by: Sergey Kuznetsov <skuznetsov@ripple.com >
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
2026-07-14 18:48:10 +00:00
Ed Hennis
f10dd7b450
fix: Handle rounding just above kMaxRep more accurately ( #7389 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Vito Tumas <5780819+Tapanito@users.noreply.github.com >
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
2026-07-14 18:47:41 +00:00
Ed Hennis
0a4676d947
fix: Document and assert "after" is never null in invariants ( #7354 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-07-14 18:16:46 +00:00
Ayaz Salikhov
0dc942508e
ci: Run full matrix only on Ready to merge or Full CI build labeled PRs ( #7689 )
...
Co-authored-by: Bart <bthomee@users.noreply.github.com >
2026-07-14 16:09:20 +00:00
Gregory Tsipenyuk
2403670da9
fix: Strengthen Clawback invariant checks for MPT balances ( #7285 )
2026-07-14 14:31:06 +00:00
Jingchen
c621136748
test: Add unit tests for IP address related functions ( #7744 )
...
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Ed Hennis <ed@ripple.com >
2026-07-14 14:29:18 +00:00
Sergey Kuznetsov
2e25435a4a
ci: Add Rust to Nix docker image ( #7571 )
2026-07-14 13:28:55 +00:00
Ayaz Salikhov
ab3ff66cd9
docs: Add more information about pre-commit hooks and how to set them up ( #7802 )
2026-07-14 12:55:34 +00:00
Alex Kremer
73e97b8b84
test: Add JSON array size tests ( #7592 )
2026-07-14 12:35:04 +00:00
Ayaz Salikhov
e1d4f357dc
chore: Enable most readability checks ( #7772 )
2026-07-14 12:21:40 +00:00
Bart
acd54fd627
ci: Do not run conflict checker when label is applied ( #7774 )
...
Co-authored-by: Bart <11445373+bthomee@users.noreply.github.com >
2026-07-14 10:22:49 +00:00
Ayaz Salikhov
cd06ee221d
chore: Run clang_tidy_check with pass_filenames: false from pre-commit ( #7800 )
2026-07-13 19:19:18 +00:00
Peter Chen
752dab8b30
feat: Add delegate filter param for account_tx RPC ( #6126 )
2026-07-13 18:44:59 +00:00
Mayukha Vadari
86583bc34e
refactor: Move jss.h include out of Indexes.h ( #7799 )
2026-07-13 17:44:47 +00:00
Ayaz Salikhov
2b4d067ace
test: Add tests for check doxygen style ( #7795 )
2026-07-13 14:38:33 +00:00
Ayaz Salikhov
62634463f4
style: Add pre-commit hook to check doxygen style ( #7794 )
2026-07-13 13:27:14 +00:00
Ayaz Salikhov
73b6852a12
style: Unify style for all Doxygen comments ( #7776 )
2026-07-13 10:40:40 +00:00
Pratik Mankawde
b2baefa907
Merge branch 'pratik/otel-phase1c-rpc-integration' into pratik/otel-phase2-rpc-tracing
2026-07-11 18:00:11 +01:00
Pratik Mankawde
906780b622
Merge branch 'pratik/otel-phase2-rpc-tracing' into pratik/otel-phase3-tx-tracing
2026-07-11 18:00:11 +01:00
Pratik Mankawde
868ee3eadd
Merge branch 'pratik/otel-phase1b-telemetry-infra' into pratik/otel-phase1c-rpc-integration
2026-07-11 18:00:04 +01:00
Pratik Mankawde
a512009170
fix(telemetry): replace std::format with string concat for gcc-12
...
libstdc++ ships <format> starting with gcc-13, so std::format in
SpanGuard::span() fails to compile on gcc-12. Build the "<prefix>.<name>"
span name via std::string::append instead and drop the <format> include.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 17:59:33 +01:00
Ed Hennis
8306ac7710
fix: Improve Number addition/subtraction rounding ( #7369 )
...
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-07-11 00:18:31 +00:00
Olek
fd2cc6dcb3
feat: XLS-68: Sponsor, #5887 continuation ( #7350 )
...
Co-authored-by: tequ <git@tequ.dev >
Co-authored-by: yinyiqian1 <yqian@ripple.com >
Co-authored-by: Mayukha Vadari <mvadari@ripple.com >
Co-authored-by: Mayukha Vadari <mvadari@gmail.com >
Co-authored-by: xrplf-ai-reviewer[bot] <266832837+xrplf-ai-reviewer[bot]@users.noreply.github.com>
Co-authored-by: Peter Chen <34582813+PeterChen13579@users.noreply.github.com >
Co-authored-by: Zhiyuan Wang <96991820+Kassaking7@users.noreply.github.com >
Co-authored-by: Ayaz Salikhov <asalikhov@ripple.com >
Co-authored-by: Ayaz Salikhov <mathbunnyru@users.noreply.github.com >
Co-authored-by: Zhiyuan Wang <1830604455@qq.com >
2026-07-10 21:58:19 +00:00
Pratik Mankawde
c2e5e0d808
Merge branch 'pratik/otel-phase2-rpc-tracing' into pratik/otel-phase3-tx-tracing
...
# Conflicts:
# include/xrpl/telemetry/SpanGuard.h
2026-07-09 14:01:27 +01:00
Pratik Mankawde
9240dc2a12
Merge branch 'pratik/otel-phase1c-rpc-integration' into pratik/otel-phase2-rpc-tracing
2026-07-09 14:00:33 +01:00
Pratik Mankawde
baacd054c9
Merge branch 'pratik/otel-phase1b-telemetry-infra' into pratik/otel-phase1c-rpc-integration
2026-07-09 14:00:33 +01:00
Pratik Mankawde
ebf8b6e8a9
fix(telemetry): add <cstdint> to TxTracing.h for std::uint8_t (misc-include-cleaner)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-09 14:00:22 +01:00