Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Instrument LangGraph Platform background run submission and joining

Aberta
#2,437 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 2 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
35/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
typescript

Direção de pesquisa

Comece lendo a implementação da issue #2199 e a especificação de instrumentação; em seguida, mapeie as quatro APIs de execução listadas de @langchain/langgraph-sdk e seus canais tipados. Defina os ciclos de vida dos spans e a correlação entre processos a partir dos identificadores de run/thread do provedor, sem tratar a confirmação do envio como conclusão. Adicione a cobertura e2e solicitada com o SDK real, snapshots da árvore de spans, atualizações do resumo de CI, verificações de replay e documentação.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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.
Linguagem predominante
TypeScript
Estrelas
28
Forks
14
Merge médio
2d 18h
PRs com merge (30d)
65

Preparar o ambiente

  • Inclui um Dockerfile ou arquivo Docker Compose
  • Sem modelo de pull request
  • Sem guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de braintrustdata/braintrust-sdk-javascript

Todas as issues de braintrustdata/braintrust-sdk-javascript

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.