feat(callbacks/tls): add opt-in TLS observability callback - #936
Open
runninggo wants to merge 7 commits into
Open
feat(callbacks/tls): add opt-in TLS observability callback#936runninggo wants to merge 7 commits into
runninggo wants to merge 7 commits into
Conversation
import TLS callback module into eino-ext align tracing hooks with existing callback integrations add regression tests for tool-name mapping and stream concat behavior
runninggo
force-pushed
the
codex/upstream-eino-tls-lens-final
branch
from
July 28, 2026 02:55
07477ad to
460ba5d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
feat: A new opt-in callback integration.
Check the PR title
<type>(optional scope): <description>More detailed description
en:
Adds
callbacks/tls, an opt-in Eino callback module that exports callback spans to Volcengine TLS. It keeps existing callback and generic OTLP behavior unchanged unless TLS export is explicitly configured.The module records
agent.turn,llm.request, andtool.callspans, aggregates streaming chunks before exporting, and attaches token usage, provider/model metadata, tool arguments/results, error state, and duration when available.The PR also adds TLS transport options in
libs/acl/opentelemetryand Ark callback usage metadata needed for complete trace attribution.The module-local
genprotoreplacement was removed so downstream consumers do not rely on non-transitive Go module configuration.zh(optional):
新增可选的
callbacks/tls回调模块,将 Eino 回调 Span 导出到 Volcengine TLS;未显式配置时不会改变现有 callback 或通用 OTLP 行为。流式输出会在导出前聚合,并保留模型、Token、工具调用、错误和耗时信息。Which issue(s) this PR fixes
Fixes #935
Validation
go test -mod=readonly -race -gcflags='all=-l -N' ./...incallbacks/tlsgo test -mod=readonly -race -gcflags='all=-l -N' ./...inlibs/acl/opentelemetrygo test -mod=readonly -race -gcflags='all=-l -N' ./...incomponents/model/arkgofmt, andgit diff --checkverified.Upstream GitHub Actions will run after this PR is opened.