@traceroot-ai/traceroot 0.2.0
Internal export mode + trace-id forcing
initialize({ internalExport: { path, headers } })— export spans to an internal ingest route instead of the public endpoint. Rejects a path without a leading/with aTypeErrorbefore any state is latched.TraceRoot.isTracingActive()— whether this SDK's provider won global OTel registration; the signal consumers should latch on instead of probing.observe({ traceId, projectId, ... })/startSpan({ traceId, ... })— force a caller-chosen (dashless, lowercase 32-hex) trace id; internal mode only.- Per-root project attribution:
projectIdon a root is stamped astraceroot.project_idon every span in its tree; spans that end unattributed are dropped rather than guessed, so one process can serve many projects over one exporter.
Compatibility note for existing users
When an environment is configured (init option or TRACEROOT_ENVIRONMENT), spans now carry traceroot.environment alongside the existing deployment.environment. No other behavior changes without internalExport configured.