Skip to content

feat(traces): trace detail UX pass - #1485

Merged
Makisuo merged 6 commits into
mainfrom
feat/trace-detail-ux-pass
Oct 15, 2026
Merged

Makisuo merged 6 commits into
mainfrom
feat/trace-detail-ux-pass

Merge branch 'main' into feat/trace-detail-ux-pass

11b8afa
Select commit
Loading
Failed to load commit list.
Maple Review Bot / Maple / review succeeded Oct 15, 2026 in 3m 59s

Confidence 9/10 · No issues found

🟢 Confidence 9/10 · safe to merge
Share attribution fuzzed against an independent union measure, and every caller of the reshaped strip/share API was read at the head.
quality 100/100 · no findings · tests partial · risk low

Reworks the trace detail page: per-service time is now attributed to the innermost running span, plus a trace error callout, a start-time chip, self time/share in the span panel and a ?view= URL tab. Contained UI-only change; safe to merge.

  • computeServiceShares sweeps self-intervals of the span tree instead of per-service unions
  • collectTraceErrors replaces the two inline hasError copies and drives a new callout
  • Anatomy strip takes rootSpans/spanCount plus a viewer-timezone start time
  • $traceId keeps the view tab in ?view=
What was checked
  • Fuzzed the new sweep over 4,000 random trees: attributed total equals the self-interval union, percents total 100, no negatives
  • All three strip callers (web page, peek sheet, local-ui) pass rootSpans/spanCount; the only other consumer is the ui strip itself
  • toEpochMs leaves ISO-with-Z input untouched, so the new start-time chip is safe for both warehouse shapes

11b8afa · Updated on every push. Reply "won't fix" to dismiss a finding, or mention @maple-review-bot to ask about one.