fix(server): RPC spans join the client's trace - #67
Conversation
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
PR SummaryLow Risk Overview The WebSocket RPC server is switched from Tests now drive a mini RpcClient/RpcServer loop and assert trace linkage: shared trace id, server span parent = client span, handler children parent = server span (unary and streamed). Reviewed by Cursor Bugbot for commit d8b1157. Bugbot is set up for automated code reviews on this repo. Configure here. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: TrogonStack/t3code/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe WebSocket RPC server now uses exported tracing options. Trace-enabled unary and streamed RPC methods annotate the current span. Tests check trace propagation and span parentage across client, server, and handler calls. ChangesWebSocket RPC tracing
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Sequence Diagram(s)sequenceDiagram
participant RPCClient
participant WebSocketRPCServer
participant RPCHandler
RPCClient->>WebSocketRPCServer: Invoke unary or streamed RPC
WebSocketRPCServer->>RPCHandler: Run method with server span
RPCHandler->>RPCHandler: Create child span
Suggested reviewers: Merge Risk: ⚪ Minimal · up to No actionable issue is established, so the change is mergeable after normal checks. Security Architecture ReviewSecurity architecture risk: 🟡 Moderate · up to Authenticated clients can now influence the trace identity of server RPC work. Existing authentication and RPC scope checks remain in place, but the limits on trace export and behavior during interrupted or concurrent calls are not established. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by CodeRabbit