fix(opencode): export AI SDK telemetry spans (#22526)

This commit is contained in:
Kit Langton
2026-04-14 22:30:50 -04:00
committed by GitHub
parent 68a9a47976
commit f73ff781e7
10 changed files with 489 additions and 402 deletions

View File

@@ -21,6 +21,8 @@ import { Plugin } from "@/plugin"
import { Skill } from "../skill"
import { Effect, Context, Layer } from "effect"
import { InstanceState } from "@/effect/instance-state"
import * as Option from "effect/Option"
import * as OtelTracer from "@effect/opentelemetry/Tracer"
export namespace Agent {
export const Info = z
@@ -334,6 +336,9 @@ export namespace Agent {
const model = input.model ?? (yield* provider.defaultModel())
const resolved = yield* provider.getModel(model.providerID, model.modelID)
const language = yield* provider.getLanguage(resolved)
const tracer = cfg.experimental?.openTelemetry
? Option.getOrUndefined(yield* Effect.serviceOption(OtelTracer.OtelTracer))
: undefined
const system = [PROMPT_GENERATE]
yield* plugin.trigger("experimental.chat.system.transform", { model: resolved }, { system })
@@ -346,6 +351,7 @@ export namespace Agent {
const params = {
experimental_telemetry: {
isEnabled: cfg.experimental?.openTelemetry,
tracer,
metadata: {
userId: cfg.username ?? "unknown",
},