medium severityweave

In Weave UI Traces tab, nested @weave.op calls appear as separate root traces instead of hierarchical tree with proper parent-child relationships. Traces missing from UI entirely in multiprocessing setups.

Root cause

Trace context (trace_id, parent_id) is stored in thread-local storage and lost when switching threads or processes without proper propagation, causing child calls to appear as root calls instead of nested under parents. Background upload threads may not complete before process exit in workers.

weavetraceparent_idtrace_idhierarchythreadingmultiprocessing

Citations