Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Instrument LangGraph Platform background run submission and joining

Ouverte
#2,437 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
typescript

Piste de recherche

Commencez par lire l’implémentation de l’issue #2199 et la spécification d’instrumentation, puis faites correspondre les quatre API d’exécution de @langchain/langgraph-sdk indiquées et leurs canaux typés. Définissez la durée de vie des spans et la corrélation interprocessus à partir des identifiants d’exécution/de thread du fournisseur, sans considérer l’accusé de réception de la soumission comme une fin. Ajoutez la couverture e2e demandée avec le SDK réel, les snapshots de l’arbre des spans, les mises à jour du résumé CI, les vérifications de replay et la documentation.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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.
Langage dominant
TypeScript
Étoiles
28
Forks
14
Merge moyen
2 j 16 h
PR mergées (30 j)
70

Préparer son environnement

  • Fournit un Dockerfile ou un fichier Docker Compose
  • Aucun modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de braintrustdata/braintrust-sdk-javascript

Toutes les issues de braintrustdata/braintrust-sdk-javascript

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.