Skip to content

feat(web): technology and runtime marks in the trace waterfall - #2046

Merged
Makisuo merged 5 commits into
mainfrom
feat/waterfall-span-icons
Nov 1, 2026
Merged

Makisuo merged 5 commits into
mainfrom
feat/waterfall-span-icons

fix(web): mark Workers that report cloud.platform on the resource

8f2c591
Select commit
Loading
Failed to load commit list.
Maple Review Bot / Maple / review succeeded Nov 1, 2026 in 1m 10s

Confidence 10/10 · No issues found

🟢 Confidence 10/10 · safe to merge. Resolver and row rendering are pinned by tech.test.ts and the waterfall scene test; the narrow-width kind-label hide rests on preview screenshots.
no findings · tests covered · risk medium

The waterfall now marks what each span called (gen_ai, db, messaging, rpc) and what runs each service (Worker, Effect, or runtime), backed by four more projected span and resource keys. The resolver, the row changes and the Color-by fix added since the last review hold up.

  • spanTech picks the called system by gen_ai, db, messaging, then rpc precedence
  • serviceMark prefers the Worker mark, then serviceRuntime (Effect, runtime, SDK language)
  • spanHierarchyQuery projects 4 more span and 4 more resource attribute keys
  • countKeys skips the query's empty "" projections so Color-by offers only real keys

Production impact

Telemetry this change adds and removes (2)
  • ➕ attribute rpc.system · packages/query-engine/src/__sql_baseline__/catalog.sql:13915
  • ➕ attribute gen_ai.system · packages/query-engine/src/__sql_baseline__/catalog.sql:13915
What was checked
  • pickAttr discards blank values (cloud-platforms.ts:67), so the query's "" projections never produce a mark
  • Prod reports cloud.platform=cloudflare.workers on the resource only, which the new serviceMark check reads
  • Every DbIconKey resolves through DB_ICON, which satisfies Record<DbIconKey, IconName> (node-card.ts:45)

8f2c591 · Reply "won't fix" to dismiss a finding, or mention @maple-review-bot to ask about one.