Skip to content

feat(sandbox): trace JS dataplane operations#2906

Open
Mukil Loganathan (langchain-infra) wants to merge 1 commit into
mainfrom
infra/add-js-sandbox-dataplane-tracing
Open

feat(sandbox): trace JS dataplane operations#2906
Mukil Loganathan (langchain-infra) wants to merge 1 commit into
mainfrom
infra/add-js-sandbox-dataplane-tracing

Conversation

@langchain-infra
Copy link
Copy Markdown
Contributor

Summary

  • Trace JS sandbox dataplane operations as LangSmith tool runs for run, reconnect, write, and read
  • Attach sandbox_id and sandbox_name metadata to those traces
  • Keep command and file payload behavior unchanged: no sandbox id env injection, no env-key logging, and file contents stay out of trace inputs

Test Plan

  • pnpm exec tsc --noEmit --pretty false
  • pnpm test:single src/tests/sandbox.test.ts
  • pnpm exec oxlint src/sandbox/sandbox.ts src/tests/sandbox.test.ts
  • pnpm exec oxfmt --check src/sandbox/sandbox.ts src/tests/sandbox.test.ts

@github-actions
Copy link
Copy Markdown

JS perf benchmark

Lower is better. Noisy on shared runners — treat as a signal, not a gate.

Base64-heavy payload

Single large base64 string per message — the shape the worker-offload path is optimized for.
Payload: 2511.2 KB in / 5.2 KB out, 100 runs.

metric main this PR delta
Wall time (ms) 2144.82 1789.38 -16.6%
createRun total (ms) 95.25 93.40 -1.9%
createRun p50 (ms) 0.64 0.75 +16.1%
createRun p95 (ms) 0.93 1.00 +7.6%
createRun p99 (ms) 36.05 31.81 -11.8%
createRun max (ms) 36.05 31.81 -11.8%
updateRun total (ms) 44.39 55.53 +25.1%
updateRun p95 (ms) 0.89 2.72 +205.2%
loop lag total (ms) 899.11 959.71 +6.7%
loop lag p50 (ms) 0.09 0.10 +4.6%
loop lag p95 (ms) 4.13 5.21 +26.1%
loop lag p99 (ms) 12.13 29.82 +145.8%
loop lag max (ms) 121.88 95.27 -21.8%

Structural payload

Many small strings across a wide/nested object graph. Should bypass worker offload and use sync flush.
Payload: 1239.5 KB in / 13.3 KB out, 100 runs.

metric main this PR delta
Wall time (ms) 1500.27 1453.69 -3.1%
createRun total (ms) 454.33 404.44 -11.0%
createRun p50 (ms) 3.38 3.38 -0.0%
createRun p95 (ms) 13.45 6.16 -54.2%
createRun p99 (ms) 27.23 17.28 -36.5%
createRun max (ms) 27.23 17.28 -36.5%
updateRun total (ms) 29.96 28.74 -4.1%
updateRun p95 (ms) 0.55 0.54 -1.7%
loop lag total (ms) 1057.51 1017.98 -3.7%
loop lag p50 (ms) 0.07 0.07 +1.7%
loop lag p95 (ms) 4.86 4.94 +1.6%
loop lag p99 (ms) 124.47 124.18 -0.2%
loop lag max (ms) 129.10 147.57 +14.3%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant