docs(node): add debug-trace-server guide#47
Conversation
|
Good addition — the flag/env-var/default tables appear accurate against the upstream source, copy-pasteable examples are clean, and cross-links are correct. Three issues inline; the metric-name one is the most important to fix before merge. |
- Sentence-case heading (Debug trace server) - Restore debug_getCacheStatus in method table - Use warning hint for start-block hash caveat - Show full metric names with debug_trace_ prefix - Fix lychee.toml: include_fragments bool -> string for lychee 0.24
|
All four prior review threads are resolved in this revision — metric names, One minor item to verify: Everything else looks good — content is accurate, flags are verified against source, deployment examples are copy-pasteable, and the page fits naturally into the Node Operation section. |
|
All four previous review threads are addressed in the current diff — resolved above. One new item: the Everything else looks solid — the flag table, env vars, defaults, and metric names all cross-check cleanly. Structure and tone match the node layer conventions. |
ReviewOverall the guide is solid — well-structured, follows All six previously raised threads have now been addressed:
One remaining item: the |
|
All six prior review threads are resolved in the current diff. The The guide is in good shape:
No new issues. Ready to merge. |
|
All 7 prior threads are resolved and the current diff looks clean. lychee.toml — debug-trace-server.md — content is comprehensive and well-structured:
One thing to be aware of before merging: the Quick Start table lists Otherwise LGTM. |
Co-authored-by: liquan.mega <flyq951@gmail.com> Signed-off-by: Yilong Li <4922997+yilongli@users.noreply.github.com>
| | `--response-cache-max-size` | `DEBUG_TRACE_SERVER_RESPONSE_CACHE_MAX_SIZE` | `1GB` | Maximum memory for cached responses. Accepts `KB`, `MB`, `GB` suffixes. | | ||
| | `--response-cache-estimated-items` | `DEBUG_TRACE_SERVER_RESPONSE_CACHE_ESTIMATED_ITEMS` | `1000` | Initial capacity hint. Set to `0` to disable the cache entirely. | | ||
|
|
||
| The cache stores pre-serialized JSON responses keyed by `(block_number, tracer_type)`. |
There was a problem hiding this comment.
The key (block_number, tracer_type) omits tracer options. Callers can vary tracerConfig independently of tracer — for example, prestateTracer with "diffMode": false vs "diffMode": true produce different output but would map to the same cache key, so the first response would be served for both.
Please verify whether the actual implementation key includes the full request options (tracer + config), and update this sentence to match. If only the tracer name is included, that's a correctness bug worth surfacing to users.
|
|
||
| The cache stores pre-serialized JSON responses keyed by `(block_number, tracer_type)`. | ||
| Different tracers on the same block are cached independently. | ||
| Entries are invalidated automatically on chain reorganization. |
There was a problem hiding this comment.
This claim is not scoped to local cache mode. In stateless mode (no --data-dir) there is no background sync pipeline — so the server has no mechanism to detect chain reorganizations and invalidate entries. Either scope this to local cache mode, or explain how reorg detection works without --data-dir.
|
All 7 previous review threads are resolved. The document is comprehensive, well-structured, and follows the node layer conventions. Two issues in the response cache section need clarification before merge:
Everything else looks good — metrics table is correct with full |
Summary
Adds
docs/node/debug-trace-server.md— operator guide for self-hosting a standalonedebug_*/trace_*RPC server backed by SALT stateless execution.--witness-endpointcan point at the public RPC for teams without their own witness generator.--data-dir, block pruning, response cache, metrics.debug_traceBlockByNumber,debug_traceBlockByHash,debug_traceTransaction) and Parity-style (trace_block,trace_transaction) with full tracer table.Updates
docs/SUMMARY.mdto list the new page under Node Operation.Verification
bin/debug-trace-server/src/main.rsandcrates/stateless-common/src/logging.rs.bin/debug-trace-server/src/metrics.rs.stateless-validation.md,witness.md, and../dev/send-tx/debugging.mduse relative paths.docs/node/AGENTS.mdrules: one sentence per line, reference tone, copy-pasteable commands, angle-bracket placeholders, GitBook hint blocks.