unstale

pypi / opik

opik

What changed in opik 1 to 2, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-12.

7 breaking1 security21 new APIs and options2 performance16 behavior and defaults43 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.3.0 on npm

opik 284 changes

Breaking changes 7

  • ChatPrompt() now uses the default project.

    2.2.143release notes

  • Free-form SQL bytes read are capped, and ClickHouse TOO_MANY_BYTES errors are mapped to a clean 400 response.

    2.2.143release notes

  • Prompt() now uses the default project.

    2.2.143release notes

  • A non-object LLMJudge verdict is now treated as a parse failure.

    2.2.142release notes

  • Project names over 150 characters are now rejected.

    2.2.142release notes

  • Gemini 4 Argon's maximum output tokens are capped at Google's limit of 32,768.

    2.2.141release notes

  • The process now exits with a non-zero status when a database migration fails.

    2.2.134release notes

Security 1

New APIs and options 17

  • Experiments can now be filtered by evaluation method.

    2.2.143release notes

  • Online-eval Decision rules can be scored with gpt-6-luna through OpenAI's Decisions API.

    2.2.143release notes

  • An organization context with a default organization is added.

    2.2.143release notes

  • Service account token authentication is added, with tokens returned in plain text.

    2.2.143release notes

  • Any LLM span can now be opened in the playground.

    2.2.142release notes

  • Experiment items can be queried across all experiments belonging to a dataset.

    2.2.141release notes

  • Gemini and Vertex AI are available on the catalog settings panel.

    2.2.140release notes

  • Bedrock providers can call Claude through Anthropic Messages and Nova through Converse.

    2.2.139release notes

  • Traces and threads can be filtered by comments.

    2.2.139release notes

  • Search is available within a thread in the thread side panel.

    2.2.139release notes

  • Adds session analysis item tables for two-lane analysis.

    2.2.136release notes

  • The playground adds a blank prompt variant.

    2.2.128release notes

  • The playground supports loading and saving Text/Chat prompts.

    2.2.128release notes

  • Opt-in network isolation is added for the executor.

    2.2.127release notes

  • A PostHog-driven announcement banner was added for Comet Cloud.

    2.2.126release notes

  • EvaluationSuiteResult gains toDict() to convert results to a dictionary.

    2.0.0release notes

  • EvaluationSuiteResult gains toReportDict() to convert results to a report dictionary.

    2.0.0release notes

Performance 2

  • Default-sorted experiment item compare pages are late-materialized for improved performance.

    2.2.143release notes

  • Thread reads limit trace loads to the weeks containing their traces.

    2.2.135release notes

Behavior and default changes 15

  • Recursive fsGroup chown is skipped on ClickHouse volumes.

    2.2.143release notes

  • Online-evaluation monitoring traces are now always persisted.

    2.2.143release notes

  • The agentic judge submits its verdict through a tool.

    2.2.141release notes

  • evaluate_threads can evaluate more than 1000 threads.

    2.2.141release notes

  • Organizations with an expired Pro trial are shown a banner.

    2.2.139release notes

  • The model prices file was updated, which may affect pricing information used by Opik.

    2.2.135release notes

  • The annotator view card and preview are simplified.

    2.2.133release notes

  • LLM clients can fail over to the next address without replaying requests.

    2.2.133release notes

  • The same Ollie chat can be continued.

    2.2.133release notes

  • Online-eval rules can pick the OpenAI and OpenRouter reasoning effort.

    2.2.133release notes

  • Pricing now covers 1-hour cache writes on every provider.

    2.2.131release notes

  • Streams can wait for headers up to the stream read timeout.

    2.2.131release notes

  • Users who must verify their email are sent to Comet's verification page.

    2.2.130release notes

  • The shared Responses API transport stays open.

    2.2.130release notes

  • The playground lets users duplicate any prompt variant.

    2.2.128release notes

Fixes and other changes 42

  • Skipped llm_unit tests are no longer logged as failed by the pytest plugin.

    2.2.143release notes

  • The SDK reports traces it drops at shutdown, on 429 responses, and on queue overflow.

    2.2.143release notes

  • A thread page's messages are read from its first and last traces only.

    2.2.142release notes

  • The dedup cache is re-synced after a dataset insert fails.

    2.2.141release notes

  • Keeps "<<" quoted in YAML output.

    2.2.140release notes

  • Normalizes drifted judge verdicts and escapes quotes in the evaluate_threads filter.

    2.2.140release notes

  • The export CLI reports failed trace exports.

    2.2.140release notes

  • Upper-case model names are priced like lower-case names, so model pricing no longer depends on letter casing.

    2.2.140release notes

  • An OTel batch is kept when its top-level spans belong to an existing trace.

    2.2.140release notes

  • Equals compares dictionaries, lists, and sets by content.

    2.2.139release notes

  • Failed judge scores are rejected in jury consensus.

    2.2.139release notes

  • Judges on gpt-6 and Claude 4.7+/5.x stop sending refused sampling parameters.

    2.2.139release notes

  • Removing an Ollie iframe no longer crashes the page while reading setItem.

    2.2.139release notes

  • Tool calls are retained in LiteLLM traces when streamed.

    2.2.139release notes

  • Readability scoring restores textstat's language after calculating scores.

    2.2.139release notes

  • A dataset run with several prompts into a new project no longer fails with “Project already exists”.

    2.2.138release notes

  • Deadlocks are retried when creating a dataset's first version.

    2.2.138release notes

  • User fields named end_time remain unchanged on replay.

    2.2.138release notes

  • A zero flush timeout is treated as an expired budget.

    2.2.138release notes

  • User fields named last_updated_at remain unchanged on replay.

    2.2.138release notes

  • Traces from run_simulation are logged to the given project_name.

    2.2.138release notes

  • Support for span cost breakdowns is fixed.

    2.2.138release notes

  • User fields named start_time remain unchanged on replay.

    2.2.138release notes

  • Task-span metrics that re-scoring cannot score are reported.

    2.2.138release notes

  • The TypeScript LLM-judge parser accepts repeated identical JSON objects.

    2.2.137release notes

  • Thread search picks threads and keeps all their traces.

    2.2.137release notes

  • On google-adk 2.13.0, the root ADK agent is kept as the trace.

    2.2.135release notes

  • The live check skips retired and unpickable models.

    2.2.135release notes

  • Responses-only OpenAI models are supported.

    2.2.135release notes

  • Thread attachments now scroll together with messages in the thread sidebar.

    2.2.135release notes

  • ClickHouse backup imagePullSecrets are now placed on the pod spec.

    2.2.134release notes

  • The SDK safely handles unsupported numeric LLMJudge assertions.

    2.2.134release notes

  • A blank OPIK_API_KEY is treated as unconfigured.

    2.2.134release notes

  • A model switch now reads the effort levels shown in the panel.

    2.2.131release notes

  • Pricing now covers every prompt-size tier.

    2.2.131release notes

  • Provider error bodies are kept out of retry and error logs.

    2.2.131release notes

  • Retries are limited to transient provider failures.

    2.2.131release notes

  • OpenAI errors with extra fields are parsed.

    2.2.130release notes

  • Optimizations are paginated before aggregation.

    2.2.130release notes

  • Provider custom headers are validated like they are on the backend.

    2.2.130release notes

  • Span retries no longer pin span payloads.

    2.2.129release notes

  • Studio LLM calls are pinned to the gateway.

    2.2.127release notes

opik 16 changes

New APIs and options 4

  • The traces table gains CSV export.

    1.0.0release notes

  • Custom field filters are supported, allowing developers to filter using custom fields.

    1.0.0release notes

  • Experiment comparison gains a feedback scores tab.

    1.0.0release notes

  • Opik adds a watsonx integration, allowing developers to use watsonx with Opik.

    1.0.0release notes

Behavior and default changes 1

  • Datasets support a flexible items format, allowing developers to provide dataset items in more than one format.

    1.0.0release notes

Fixes and other changes 1

  • The columns field now always returns all dataset data columns.

    1.0.0release notes