Skip to content

Releases: glassflow/rius-sdk-typescript

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 14 Oct 17:03
9bc8df9

1.3.0 (2026-10-14)

Features

  • stamp gen_ai.main_agent.{id,name,description} on the resource next to rius.main_agent.* (#135) (9d4f1bc)

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 13 Oct 16:30
9ec9144

1.2.0 (2026-10-13)

Features

  • @arizeai/openinference-vercel is no longer needed and can be uninstalled (f187227)
  • client.ready no longer lists vercel-ai on AI SDK v5 and v6; it lists it only where @ai-sdk/otel is registered (AI SDK v7) (f187227)
  • map the Vercel AI SDK's ai.* telemetry onto the GenAI conventions natively (#129) (c8d52f0)
  • map the Vercel AI SDK's rerank spans natively, as the new RERANKER span kind (SpanKind.RERANKER) with the operation rerank (f187227)
  • record the reasoning split and classify agent_step on Vercel AI SDK v7 spans (#133) (94d32ba)

Bug Fixes

  • carry OpenTelemetry's telemetry.sdk.* keys on the resource (#128) (89761e6)
  • count a LangChain call's usage once when the provider span recorded it (#131) (3445882)
  • record the negotiated MCP protocol version on every transport (#127) (da4323a)

v1.1.1

Choose a tag to compare

@github-actions github-actions released this 13 Oct 12:26
f613743

1.1.1 (2026-10-13)

Bug Fixes

  • drop a request bag's tool definitions when llm.tools supplied them (#120) (064d112)
  • map pydantic-ai's thinking_tokens and thoughts_tokens to the canonical reasoning count (#119) (8b11f6e)
  • name a LangChain run's provider from ls_provider when no provider key is set (#123) (b6c703a)
  • record OpenAI embeddings token counts the OpenInference instrumentation leaves out (#124) (066e896)

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 13 Oct 08:23
21e46dc

1.1.0 (2026-10-12)

Features

  • accept app-imported anthropic and openai modules in init() (#107) (83ee444)

Bug Fixes

  • drop a LiteLLM routing prefix that names the span's provider from gen_ai.request.model (#115) (f9e751b)
  • map time to first chunk under its metric name, and give such spans a first-token event (#116) (6c533ee)
  • name the provider from llm.system when the host is unknown (#111) (1fe2b68)
  • never take a LangChain bag's stream member as the request's stream flag (#117) (b222300)
  • read the request model and max tokens from LlamaIndex's model metadata (#118) (451aecd)
  • require openinference-instrumentation-openai 4.4.1 and drop the rejected-call guard (#112) (7128b7c)
  • stop double-counting AI SDK v7 usage on the invoke_agent span (#110) (0e2d98b)
  • warn when a declared anthropic or openai integration cannot load (#109) (d1ad014)

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 14:19
2b43e14

1.0.0 (2026-09-29)

Upgrading from 0.x

Version 1.0.0 finishes the move from the GlassFlow name to Rius and brings span names in line with the OpenTelemetry GenAI conventions. It needs the Rius platform release of 2026-09-29 or later, which accepts rius.span.pending.

Breaking changes and how to migrate

What changed What to do
The pending-span attribute is now rius.span.pending, not glassflow.span.pending (#67) Update any code that imports the constant.
The tracer scope is now rius, not glassflow (#67) Update any collector or processor rule that filters on the instrumentation scope.
Span names follow the GenAI conventions: chat {model}, embeddings {model}, execute_tool {tool}, invoke_agent {agent}, retrieval {data_source}. CHAIN spans keep the function name, and an explicit name still wins (#72) Update saved searches, alerts and dashboards that are keyed on span name, or pass an explicit name.
RETRIEVER spans carry gen_ai.operation.name="retrieval" and accept dataSourceId (#69) Update any filter on the old operation name.
modelParameters maps 43 aliases onto 15 standard gen_ai.request.* keys, and unknown keys go under rius.request.* (#85) Filter on the standard keys.
The @arizeai/openinference-instrumentation-anthropic peer now needs ^0.2.7, the first version that reports prompt-cache tokens (#96) Upgrade that peer dependency.

Behaviour changes

  • The span helpers take toolName, so the tool name no longer has to come from the span name (#68).
  • A span can carry up to 4096 attributes, up from 128, so long agent calls keep their usage and output (#95).
  • With captureContent: false, the OpenInference request-parameter bag (llm.invocation_parameters) is treated as content and is not sent (#87).
  • Other OpenTelemetry SDKs in the same process (Langfuse, Traceloop, Logfire, MLflow, OpenLIT, Laminar): when one of them owns the global tracer provider, Rius can now bridge it, so that their spans (your LLM calls' parents) reach Rius too. The bridge is off by default. Turn it on with bridgeForeignProvider: true or RIUS_BRIDGE_FOREIGN_PROVIDER=1. Spans whose parent Rius never saw are flagged rius.parent.foreign either way (#104).
  • With captureContent: false, the Laminar lmnr.* content keys are stripped too (#105).

Node 18+ is still supported, and the package name (@glassflow-ai/rius) is unchanged.

⚠ BREAKING CHANGES

  • normalize modelParameters keys onto gen_ai.request.* and rius.request.* (#85)
  • name spans after their operation and target, per the conventions (#72)
  • map RETRIEVER to the retrieval operation and take a data source id (#69)
  • emit rius.span.pending and the rius tracer scope (#67)

Features

  • emit rius.context.sizes, a per-part byte breakdown of the context, on every generation span (#65) (5066d77)
  • emit rius.span.pending and the rius tracer scope (#67) (6cbd4fa)
  • map llm.finish_reason onto gen_ai.response.finish_reasons, verbatim (#84) (5aa533b)
  • map OpenInference embeddings and the response id onto the canonical keys (#100) (337050c)
  • map RETRIEVER to the retrieval operation and take a data source id (#69) (18d7404)
  • map the OpenInference model-call, usage and taxonomy keys onto the canonical wire (#81) (3d93ec6)
  • map tool.name, the llm.tools definitions and two usage spellings onto the canonical wire (#91) (02211bb)
  • name spans after their operation and target, per the conventions (#72) (b1610c1)
  • name the agent an AGENT span invokes (#71) (13f30c3)
  • name the agent executing a tool on execute-tool spans (#75) (e7c15d3)
  • normalize modelParameters keys onto gen_ai.request.* and rius.request.* (#85) (d348a9f)
  • normalize third-party attribute dialects to the conventions (#76) (6f45a0a)
  • reassemble OpenInference's flattened messages, Anthropic's multi-part contents included (#90) (2a835db)
  • record the completion id, output type and tool-call identity, and stamp service.version (#77) (056437d)
  • take gen_ai.tool.name as an explicit argument on the span helpers (#68) (b664edb)
  • take the process agent identity into rius.main_agent.*, and version the agent at both scopes (#79) (e8c7886)

Bug Fixes

  • bridge a foreign global OTel provider and flag foreign parents (RIUS-1097) (#104) (6b2b111)
  • carry the Anthropic system prompt as a system input message (#98) (1b245c6)
  • end the OpenAI span when an auto-instrumented call rejects (#99) (a324fef)
  • guard native modelParameters like the normalizer, and let the first spelling win (#93) (68b85d1)
  • keep tool_choice with content capture off by promoting it out of the request bag (#94) (8cc97c3)
  • leave U+2028/U+2029 raw in a promoted system block, as the sink writes them (#101) (552f4cc)
  • name provider SDK errors by class in error.type and exception.type (#92) (11c6dea)
  • raise the span attribute limit so long agent calls keep their usage and output (#95) (2918a8b)
  • require the Anthropic instrumentor version that reports prompt-cache tokens (#96) (eb86f0f)
  • run the Vercel transform only on the AI SDK's own ai.* spans (#97) (fc0729f)
  • stamp gen_ai.agent.name on the resource (#70) (22f3423)
  • strip Laminar (lmnr.*) content keys with captureContent off (RIUS-1070) ([#105](https://github.com/glassflow/r...
Read more

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 17:06
cad5ace

0.8.0 (2026-09-21)

Features

  • emit gen_ai.response.time_to_first_chunk alongside the first-token event (#62) (a589aed)
  • set gen_ai.tool.name on local tool spans (#60) (5678445)
  • set the OTel SpanKind field from the span taxonomy (#61) (802a70d)

Bug Fixes

  • set error.type on inference and generic spans (#59) (e602c2d)

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 14:54
0b425aa

0.7.0 (2026-09-21)

Features

  • bring MCP client spans onto the OTel MCP semantic conventions (#54) (2b1d01d)

Bug Fixes

  • set error.type on MCP tool-call spans (#58) (a492221)

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 14 Sep 19:01
a6b5a35

0.6.1 (2026-09-14)

Bug Fixes

  • masking: treat metadata.* mirrors of content keys as content (#52) (0bffd0b)

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 14 Sep 16:34
7e1e284

0.6.0 (2026-09-14)

Features

  • parity: normalise messages, bound payloads at 32 KB, and carry SDK identity on the wire (#50) (d49a9f4)
  • record tool definitions in the generation API and pin instrumentor tool capture (#40) (74742b3)
  • trace Vercel AI SDK v7 apps zero-config via registerTelemetry + @ai-sdk/otel (#43) (017d962)
  • withUser stamps user.id on every span in scope (#44) (1c89654)

Bug Fixes

  • client: shutdown() undoes the instrumentation it enabled (#46) (f03dc53)
  • masking: cover the GenAI tool-call keys and run the mask over the status message (#45) (37fdcf0)
  • robustness edge cases from the 2026-09-14 review (#48) (2722d5a)
  • strip tool definitions and Vercel ai.* content on every sanitized path (#42) (51685b4)

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 10 Sep 16:07
b4305c9

0.5.0 (2026-09-10)

Features

  • capture reasoning output tokens in setUsage (#36) (870f61b)
  • capture requested reasoning effort level (#38) (4d9ee35)

Bug Fixes

  • sum Anthropic cache tokens into the emitted input-token total (#39) (842a0a9)