Improve tracing for nested tool calls and exec processes (#41950)

## Why

Code-mode callbacks can outlive their initial request and run in separate tasks,
so their trace context must be preserved explicitly.

## What changed

- Preserve the execution context for code-mode callbacks and add spans for
  nested tool invocations in the runtime and dispatch broker.
- Propagate each tool invocation span as the parent of its streamed gRPC
  callback, falling back to the outer execution context when needed.
- Add a `codex.exec_server.process` span for each process lifetime, including
  its process ID and completion result, without retaining the request span.

GitOrigin-RevId: a6059e34d895416f5517e51dad6ca0078355adca
This commit is contained in:
Adam Perry @ OpenAI
2026-09-01 01:00:50 +00:00
committed by copyberry
parent bfa9646787
commit 55e5158e18
10 changed files with 61 additions and 4 deletions
@@ -83,7 +83,7 @@ message ToolCall {
// Starts at one and increases independently for each execution.
uint64 sequence = 9;
// The host execution span's W3C parent context for this streamed callback.
// The host tool invocation span's W3C parent context for this streamed callback.
// gRPC metadata is fixed when the subscription stream opens, so each call
// carries its own context in the message.
optional string traceparent = 10;