stack/packages
mantrakp04 d1f93b8fda feat(analytics): withSpan + AsyncLocalStorage ambient parenting + waitUntil serverless hook
- app.withSpan(type, [options,] fn): auto-start, ambient parent for everything
  created inside fn (client + server via virtual startSpan dispatch), auto-end
  on settle; on throw records data.error and rethrows (telemetry never fails fn)
- span-context.ts: AsyncLocalStorage from the BUILT-IN node:async_hooks via a
  bundler-opaque dynamic import (works on Node/Bun/Deno/Workers/Edge; browsers
  fall back to a module-level sync stack with documented interleaving limits)
- root: true drops all ambient parents; excludeParentIds filters the FINAL
  merged parent list (an excluded span stays excluded even when re-entering via
  a kept child's chain) — both on TrackOptions and StartSpanOptions
- analytics.waitUntil constructor option: every batch-send promise (browser
  tracker + server coalescer) is passed to it so un-awaited sends survive
  serverless teardown; stripped from serialized app options (toClientJson)

Tests: 5 span-context cases (ALS nesting across awaits, parallel isolation,
sync-stack cleanup), 4 event-tracker cases (withSpan auto-end + ambient
parenting, error path, root/exclude final-list semantics, waitUntil hook)
2026-07-02 11:51:08 -07:00
..
cli chore: update package versions 2026-06-30 23:15:23 +00:00
dashboard-ui-components More consistent dashboard (#1613) 2026-07-01 09:24:08 -07:00
js chore: update package versions 2026-06-30 23:15:23 +00:00
next chore: update package versions 2026-06-30 23:15:23 +00:00
react chore: update package versions 2026-06-30 23:15:23 +00:00
sc chore: update package versions 2026-06-30 23:15:23 +00:00
shared feat(analytics): public trackEvent/startSpan SDK + custom events/spans ingestion 2026-07-02 11:34:34 -07:00
shared-backend chore: update package versions 2026-06-30 23:15:23 +00:00
tanstack-start chore: update package versions 2026-06-30 23:15:23 +00:00
template feat(analytics): withSpan + AsyncLocalStorage ambient parenting + waitUntil serverless hook 2026-07-02 11:51:08 -07:00
ui More consistent dashboard (#1613) 2026-07-01 09:24:08 -07:00