Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Instrument LangGraph Platform background run submission and joining

Aperta
#2,437 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Inizia leggendo l’implementazione per l’issue #2199 e la specifica di strumentazione, quindi mappa le quattro API di esecuzione elencate di @langchain/langgraph-sdk e i relativi canali tipizzati. Definisci i cicli di vita degli span e la correlazione tra processi a partire dagli identificatori di run/thread del provider, senza trattare la conferma dell’invio come completamento. Aggiungi la copertura e2e richiesta con l’SDK reale, gli snapshot dell’albero degli span, gli aggiornamenti del riepilogo CI, i controlli di replay e la documentazione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Follow-up to https://github.com/braintrustdata/braintrust-sdk-javascript/issues/2199.

The implementation for #2199 is intentionally limited to runs.wait and runs.stream: the caller starts execution and follows it through completion in the same call. Background execution was explicitly deferred.

Scope

Add Braintrust instrumentation for the background run workflow in @langchain/langgraph-sdk:

  • client.runs.create(threadId, assistantId, options): submit a background run.
  • client.runs.createBatch(payloads, options): submit background runs in a batch.
  • client.runs.join(threadId, runId, options): wait for an existing run.
  • client.runs.joinStream(threadId, runId, options): consume an existing run's output.

A run may be submitted in one process and joined in another. Define how the resulting observations correlate using the provider's run/thread identifiers; do not depend solely on in-memory state. A submission acknowledgement must not be represented as completion of the remote agent execution.

Note: runs.wait(threadId, assistantId, options) starts a new run and returns its final state. It is already in the parent implementation's scope; it is not the API for joining an existing run.

Acceptance criteria

  • Support automatic instrumentation and an explicit wrapper through shared typed channels, following the instrumentation specification.
  • Define submission, batch, join, and joined-stream span semantics, including what each span's lifetime measures and how separate processes correlate.
  • Capture useful inputs/results, errors, and allowlisted execution metadata without copying arbitrary configuration, headers, or credentials.
  • Preserve promise/iterator behavior, cancellation, and user-visible errors; prevent duplicate spans when wrapper and automatic instrumentation are combined.
  • Keep entity CRUD outside the instrumentation scope.
  • Add e2e tests using the real SDK for submission followed by joining from a separate process/client, batch submissions, joined streaming, errors, and cancellation.
  • Test pinned and separately named latest SDK aliases, ESM/CommonJS, and wrapped/automatic/combined/disabled modes. Assert paired span-tree snapshots, update the CI summary, and verify three consecutive replay runs.
  • Document the supported APIs and cross-process tracing behavior.
Lingua principale
TypeScript
Stelle
28
Fork
14
Merge medio
2g 16h
PR unite (30g)
70

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di braintrustdata/braintrust-sdk-javascript

Tutte le issue di braintrustdata/braintrust-sdk-javascript

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.