Adding OpenTelemetry support for debugging AXL and invisible agents

axl-otel adds OpenTelemetry distributed tracing to AXL agent meshes. AXL is peer-to-peer, so the agents you call usually call other agents you don't own. axl-otel collects spans from every cooperating peer in the chain and routes them home to the originator, even from peers the originator never directly addressed.
It's a Bun and TypeScript sidecar compiled to a static native binary. Standard OpenTelemetry over OTLP HTTP on the agent side, AXL's /send and /recv as the wire, Jaeger as the demo backend. No client library to import.
Each agent points OTEL_EXPORTER_OTLP_ENDPOINT at the local sidecar. The originator drops its AXL peer ID into OTel baggage at workflow start, and the standard BaggageSpanProcessor stamps it on every span. The sidecar routes per-span. Local peer ID goes to the local backend, anything else ships over AXL /send to the originator, whose sidecar polls /recv and forwards to its own backend. Every cooperating peer ends up in one trace.
AXL is honestly the whole reason this works. Its identity-addressed encrypted mesh is what makes a span routable home without a shared collector or a public endpoint, and the bundled MCP router unblocked the 5-agent demo without me writing transport glue.
Hacky part is using OTel baggage as a routing header instead of trace metadata. The standard processor already stamps it on every span, so routing falls out for free with no custom propagator.

