fix(console): keep live traces listed and drop empty payload cards in traces view - #515
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
skill-check — worker0 verified, 44 skipped (no docs/).
Four for four. Nicely done. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (6)
📝 WalkthroughWalkthroughThe changes improve trace visibility during live activity, refresh missing trace tags and roots, reseed spans after hidden-tab intervals, and suppress empty function-call cards from inherited identity-only spans. ChangesTrace resilience and rendering
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 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 |
Follow-ups to #504 from live testing: spans showing
request/response · empty, live traces stalling mid-run, and a second prompt's thread missing from the list for a long time.Problems
iii.payload.jsonevents only to the invocation span itself, so nested plumbing and scope spans all rendered cards with twoemptypanes.harness::turndispatch group and worker spans only export on close, so early in a turn the feed holds nothing but hidden plumbing and the filter judged the whole trace hidden.trace-rowsframe left a trace off the list until a full reseed, and the all-spans feed never re-seeded on tab-visible, leaving permanent holes after tab switches.Solutions
functionCallFromSpan: spans that only inherit their identity render a card only when they actually captured data (payload events,tool.arguments, exception); invocation spans keep their card.useSpanFilteredTraceRows: verdicts are monotone per selection (a visible verdict sticks — composition only grows); fetched verdicts never downgrade a visible one; live traces (pending snapshot in the feed, or a span end within 10s) are never hidden on a feed-only negative verdict.useTraceData: span activity for unknown traces routes through the existing debouncedtrace_idsread and missing roots are backfilled into the list — a dropped row frame self-heals in ~1s.useAllSpans: re-seed on tab-visible, mirroring the list's recovery.Tests cover the card gate, monotone verdicts, the live exemption, and
liveTraceIds.Summary by CodeRabbit