Testkube Changelog
This is the changelog for the Testkube Control Plane, latest releases are on top.
- Monthly releases add new functionality and overall improvements.
- Patch releases focus on critical bugs and security issues.
- Doc updates focus on major changes to the documentation
Monthly Release v2.11.0 (2026-06-25)
Control Plane is available in Helm chart v2.334.0. and the Agent is available in Helm chart v2.11.0.
This is a major release with lots of new features and improvements!
AI Updates
AI in Testkube is now easier to configure, faster, and safer to run.
- Create AI agents from goals: describe what you want the agent to do, and Testkube generates the agent name, description, instructions, and recommended tools.
- Configure a default model per AI agent, so each agent can use the model best suited for its work.
- Choose the model when replying in an AI chat.
- Cancel running AI chats from the UI.
- AI chat titles now appear immediately and continue to improve in the background when needed.
- AI chat responses are faster thanks to improved streaming behavior and reduced per-request overhead.
- AI triggers are safer: empty selectors no longer match every execution, wildcard matching is explicit, and trigger sessions can be rate-limited and manually stopped.
- MCP OAuth errors are clearer and include actionable guidance when the MCP endpoint is disabled.
- Testkube MCP tool descriptions were trimmed to reduce prompt size and improve AI response performance.
- Self-hosted AI Service configuration is simpler: the service now discovers dashboard configuration from Control Plane public config and no longer requires several OIDC-related environment variables.
Test & Git Triggers
- Testkube can now observe a Git repository and trigger executions on repository events. This covers the full lifecycle from simple branch pushes to GitHub pull-request automation, with fine-grained filtering and rich Git context exposed to the triggered execution (read more)
- Test Triggers can now watch custom resources and fire on specific field changes, not just built-in Kubernetes events (read more). Point a trigger at any CRD, such as Argo Rollouts, cert-manager, or your own, and add match conditions so it only runs when a field you care about changes, for example when a Rollout's
.status.phasebecomesHealthy. The dashboard discovers the resources each listener agent can watch, autocompletes their fields from the live schema, and lets you pin the trigger to the listener that should evaluate it
Onboarding
- Streamlined the migration onboarding experience, making it easier for Testkube Open Source users to get started with Testkube Cloud
- Trial users of our Testkube Cloud control plane now get an automatically provisioned, cloud hosted runner set up for them so they can start running test workflows straight away. Users can still add their own agents as well, of course.
Insights Updates
- Enhanced the Insights Board user experience with support for pinned boards, shared/privated boards, and search results by name - (read more)
- Added support for label and workflow filters searching for a substring (contains)
- Added support for identity fields searching for a substring (contains)
- Added a default Insights Board at the Workflow level with a default set of charts - (read more )
- Added eight chart types in Insights for better analysis of execution metrics (read more)
- Granular Metrics
- Native parsing of k6, Artillery, and JMeter metrics into Insights - (read more)
- Canonicalized metric names: k6, Artillery, and JMeter now share normalized
latency_p95_ms,throughput_rps, anderrors_ratealongside the tool-specific names, so you can compare runs across tools in one chart and filter by source - (read more) - Added support for Influx Line Protocol for creation of custom metric series - read more
Operations & Security
- Testkube can now authenticate to GitHub through a single centralized Testkube GitHub App. One Testkube organization can connect to multiple GitHub organizations and access repositories across all of them (read more)
- Improved the Usage & Billing experience with transparent consumption tracking for all plan levels, updated every hour
- Testkube's SCIM integration now supports the RFC 7643 complex format for roles and entitlements, improving provisioning with Microsoft Entra ID (Azure AD). Identity providers send these multi-valued attributes differently: Okta and most providers use simple string arrays, while Entra expects each value wrapped in an object. Testkube now handles both, and a per-organization setting lets you choose the format that matches your provider.
- Added a new maxRole ceiling that lets you lock a member's effective permissions to read-only regardless of the roles they hold on individual environments or teams (read more)
- Helm Charts Improvements
- Added Gateway API support for Testkube Enterprise, including configuration for Gateway, HTTPRoute, HTTP-to-HTTPS redirect, BackendTLSPolicy, and certificate configuration options, and with migration guidance for moving from Ingress without downtime. The Gateway API integration works with any compatible Gateway controller, with Traefik provided as the primary example, although controller-specific behavior and configuration may vary. NGINX Ingress remains supported for existing installations, but Gateway API is recommended for new deployments.
Runner Agent
- Runner lease coordination configuration: New environment variables on the agent to control its Kubernetes lease coordination:
LEADER_ELECTION_DISABLED-> disables lease coordination for explicitly single-replica runner deployments . Default:falseLEASE_CHECK_INTERVAL-> how often the agent checks/renews the lease (e.g.30s,1m). Default:5s
Patch Release v2.10.3 (2026-06-09)
Control Plane is available in Helm chart v2.333.3.
Incremental adjustments with no impact on enterprise/on-premise deployments.
Patch Release v2.10.2 (2026-06-07)
Control Plane is available in Helm chart v2.333.2 and the Agent is available in Helm chart v2.10.1.
Improvements
- License calculations: improve and fix calculations for fixed and floating agents.
- MCP server support custom certificates: custom CA is now configured as part of AI Service to trust in self-signed certificates.
- Agent labels and mode: manage and update agent labels and mode from helm chart values.
- TestWorkflow execution queue metrics: new metrics to monitor TestWorkflow execution queue which includes metadata information useful to know what TestWorkflow is in the list.
Fixes
- User limits in Dashboard: members page correctly shows the user limit.
- TestTrigger templates: support JSON-style field names (e.g.
.metadata.labels) for built-in resources, matchingresourceRef. - Cron job target configuration: cron job configuration in TestWorkflow Template allow target property to schedule executions in specific agents.
- TestWorkflow multiple target conditions: moving from OR to AND for all target conditions defined in a TestWorflow execution.
Monthly Release v2.10.0 (2026-06-01)
Control Plane is available in Helm chart v2.333.0 and the Agent is available in Helm chart v2.10.0.
What's new!
Granular Test Insights
In v2.10.0, we've expanded the underlying metrics data model for Test Insights so you can do a deep dive into your E2E/functional and performance test results over time.
- Automatically process JUnit, JMeter, k6, and Artillery reports, extracting relevant metrics and exposing them in the Insights.
- Filter and segment results by test case, test suite, endpoint, and other relevant dimensions.
- Explore extended metrics with improved metric grouping in the Insights time-series picker.
- Improved ordering of stacked segments to be consistent across columns.
AI Updates
AI chats now surface clearer progress while work is in flight, and agents can request credentials securely when they need access to secrets — without putting values in the thread. Together, these changes make longer AI tasks easier to trust and follow from start to finish.
- Testkube MCP Server now supports OAuth as the preferred authentication method.
- Much improved configuration for custom models in on-Prem/Air-gapped deployments.
- New "AI Analyze" actions in the Execution and Workflow views that default to use the corresponding default AI Agents included with Testkube
- Display of Token Usage for Chats in the Chats Overview and Details panel.
- The Open-Source Execution Viewer now allows for AI-generated summaries of test results so readers can quickly understand failures and what to investigate next — alongside the JUnit report browsing added in recent patches.
Improvements
- Clearer status and activity messages while the agent is working.
- Secure credential requests in chat without exposing secret values in the conversation.
- More transparent chat behavior during longer-running tasks.
Fixes
Fixed several AI chat UX issues, including cases where chat titles or message input behavior could become inconsistent.
Control Plane
On-Prem Customers on the Enterprise plan can now manage multiple organizations from one place: create organizations, review usage across them, and get warnings before hitting plan limits.
GitOps-managed workflows how show a warning in the Dashboard for that edits may be overwritten by sync.
Fixes
- Fixed an issue where switching organizations would occasionally show stale data.
- Fixed an issue where the SCIM setup URL could be generated incorrectly.
- Fixed the dashboard silent execution toggle so silent runs behave as expected.
- Fixed cases where canceled parallel workers could still appear to be running in the UI.
- Improved reliability of the executions view for large environments.
Agent
This release improves agent reliability for webhooks and execution-related flows, and makes execution lists faster and more dependable in large, high-churn environments.
Fixes
- Fixed issues where webhooks or execution-related flows could behave incorrectly in some environments.
- Improved execution-list performance and reliability for large-scale environments.
Open Source Updates
Templated Security Contexts
TestWorkflowTemplates can now use integer config parameters in security context fields such as runAsUser, runAsGroup, and fsGroup. This lets reusable templates render valid Kubernetes pod and container security contexts while keeping those values configurable.
AI Analysis in the Public Execution Viewer
Sharing a workflow execution publicly is useful for debugging handoffs, but raw logs and reports still take time to interpret. The public execution viewer now includes AI-generated summaries of test results so readers can quickly understand failures and what to investigate next — alongside the JUnit report browsing added in recent patches.
Read more: Viewing Open Source Executions
Patch Release v2.9.7 (2026-05-29)
Control Plane is available in Helm chart v2.332.7.
Improvements
- PostgreSQL performance improvements: Improved PostgreSQL query performance.
Patch Release v2.9.6 (2026-05-28)
Control Plane is available in Helm chart v2.332.6.
Improvements
- PostgreSQL performance improvements: Improved PostgreSQL query performance.
Patch Release v2.9.5 (2026-05-15)
Control Plane is available in Helm chart v2.332.5 and the Agent is available in Helm chart v2.9.5.
Improvements
- MongoDB to PostgreSQL Migration: Added
skip_tablesparameter to the convert utility for Mongo to Postgres migration.
Fixes
- Fixed an issue where executions lists would be truncated to a single page.
- SCIM Support: Fixed SCIM support for Postgres based Control Plane.
Patch Release v2.9.4 (2026-05-07)
Control Plane is available in Helm chart v2.332.4 and the Agent is available in Helm chart v2.9.3.
Features
- JUnit Report Tab in Public Execution Viewer: The OSS execution viewer now includes a JUnit report tab, allowing users to browse test results directly in the public viewer.
Improvements
- PostgreSQL: Execution query performance has been improved through denormalization migrations and updated insights queries.
Fixes
- Fixed an issue where agent capabilities were not correctly queried, which could lead to incorrect agent state in the UI.
Patch Release v2.9.3 (2026-05-05)
This is an Agent only release. the Agent is available in Helm chart v2.9.3.
Improvements
- PostgreSQL Support: The execution time for some queries has been reduced when using the PostgreSQL database.
- Skip Kubernetes TLS verification: The agent API can now handle communication to collect logs from running pods when the Kubernetes API uses an invalid TLS certificate.
Patch Release v2.9.2 (2026-04-30)
Control Plane is available in Helm chart v2.332.2 and the Agent is available in Helm chart v2.9.2.
Chart Fixes
- Missing
IMPORTS_BUCKETvariable: Added the missingIMPORTS_BUCKETenvironment variable for bothcloud-apiandworkerservices. By default, it now falls back toOUTPUTS_BUCKETunless a different imports bucket is explicitly configured. This variable is used for importing OSS data into Testkube Cloud; because it was missing, upgrades of the charts to v2.9.1 were failing.
Features
- Disable test log persistence: Added a
noneoption forlogs.storageto disable test log persistence entirely for environments that don't need to retain log data. - S3 Virtual-Hosted-Style URLs: Added support for S3 virtual-hosted-style URLs (
bucket.s3.region.amazonaws.com) alongside the existing path-style addressing.
Fixes
- Container security context on init containers: Fixed an issue where
ContainerSecurityContextcould not be applied to init containers in TestWorkflow pods. - Floating runner parallel scheduling: Fixed an issue where an already-active floating runner could be blocked from taking additional parallel executions when the floating runner concurrency limit was set to
1. - Quiet workflow log streams: Fixed an issue where workflow log streams could disconnect during quiet periods even though the workflow was still running.
- TestWorkflowExecution controller status generation: Fixed
Status.Generationnever being written by thetestworkflowexecutioncontroller, which caused all TWE CRDs to re-trigger on every operator restart.
OSS Execution Viewer
- Validate execution before prompting:
testkube viewnow validates the execution ID (or name) before asking for upload permission, so users see a clear "execution not found" error instead of being prompted for non-existent executions. - Log panel scroll: Fixed an issue where the execution viewer expanded log panels to the full log height, breaking the internal scroll. Logs now scroll within their fixed container.
- Avoid duplicate uploads:
testkube view <id>now checks whether the execution has already been shared and reuses the existing public link instead of re-uploading the same execution.
Monthly Release v2.9.1 (2026-04-23)
Control Plane is available in Helm chart v2.332.1 and the Agent is available in Helm chart v2.9.1.
What's new!
View Open Source Execution Results
Open Source users can now view execution details (step tree, logs, and artifacts) from their TestWorkflow executions directly in their browser, in a lightweight, read-only page hosted by Testkube. No login or Cloud account required.
To try it, update to the latest CLI and run:
testkube view <execution-id-or-name>
and it will open the generated link in your browser.
Read more: Viewing Open Source Executions
AI Updates
Interactive Clarification in AI Chats
AI agents can now ask structured follow-up questions when your request needs more context. Instead of making assumptions, the agent presents an interactive form to gather the details it needs — whether you're creating a workflow, debugging a failure, or exploring execution data — then acts on your answers.
Reconnect to In-Progress AI Sessions
Navigate away from an active AI chat and return without losing context. Sessions continue in the background, and all prior events are shown when you reconnect. Multiple users can observe the same session simultaneously.
Improvements
- Users can manually rename chat titles from the sidebar.
- Chat overlay persists across page refreshes.
- AI agents can now analyze logs from parallel workflow workers — use grep, line ranges, and step filtering on individual worker output, not just the main execution log.
- AI agents can now filter executions server-side by tags, time ranges, and label selectors, enabling precise queries like "all executions longer than 30s without a suite label" without downloading and scanning every result.
- MCP registry entries now indicate the expected authentication method when browsing available servers.
Fixes
- Fixed artifact file retrieval when reading files in subdirectories through the MCP server.
- Fixed date and time filtering for execution queries using natural-language time ranges.
- Fixed JSON path queries that could miss matching workflows.
- Deleting an AI agent now removes associated AI triggers automatically.
Triggers Updates
Custom Resource Triggers
TestTriggers can now fire on arbitrary Kubernetes Custom Resources, not just the built-in set (Pods, Deployments, etc.). Any CRD installed in the cluster — Argo Rollouts, Flux, Crossplane, your own operator's types — can be named as the trigger's resource by its Group, Version, and Kind.
Field-Level Trigger Matching
TestTriggers now support spec.match to fire only when specific fields on the watched resource satisfy a condition. Instead of reacting to every create/update event, a trigger can watch for a precise state transition — e.g. status.phase == Healthy or status.currentStepIndex == 3 — and run the associated Workflow only then.
Example: Argo Rollouts
Combining the two, you can tie test execution directly into a progressive delivery pipeline. A single Rollout resource moves through phases as canary steps advance; with field-level matching you can kick off the right tests at the right step without polling or external glue:
- Smoke tests after each canary step — match on
status.phase == Pausedto run quick health checks while the Rollout is waiting at a weight increment. - Full regression on completion — match on
status.phase == Healthyandstatus.currentPodHashchanging, so tests run exactly once per successful rollout and not on unrelated status updates. - Rollback validation — match on
status.phase == Degradedto trigger a diagnostic workflow the moment Argo aborts a rollout.
Open Source Updates
testkube pro connect
Connects a Testkube Open Source installation to a Testkube Control Plane. Use this command when you want to:
- Evaluate Testkube Pro functionality and capabilities with your existing TestWorkflows and results.
- Migrate your existing Testkube resources to a commercial Testkube instance (cloud or on-prem).
Before switching, the CLI automatically exports all TestWorkflow execution data (metadata, logs, and sequence numbers) from the
local agent and uploads it to the Testkube Control Plane, ensuring seamless data migration. It then installs a Testkube Runner Agent,
scales down the now-unnecessary OSS services (API server, MinIO, NATS, and the database), and updates the CLI context to Pro mode.
Users can skip the export with --skip-export or limit it to recent data with --since.
Features:
- Automatic data migration: Execution data is exported as a
.tar.gzarchive and imported to the Control Plane in a single flow — no manual steps required. - Graceful error handling: If the export or import fails (e.g. archive too large), users are warned and can continue connecting; the archive is preserved for manual retry.
- Database-aware teardown: The CLI auto-detects whether MongoDB or PostgreSQL is deployed and only scales down the active database.
- CRD conflict prevention: The runner chart is installed with
gitops.installCRD: falseto avoid duplicate CRD ownership with the existing OSS chart.
testkube pro disconnect
Reverts a Testkube Pro installation back to OSS standalone mode. The command uninstalls the Testkube Runner Agent chart, deletes the agent record from the Control Plane, scales the original OSS services (API server, MinIO, NATS, and the database) back up, and resets the CLI context to kubeconfig mode. All historical data remains intact in the original cluster database.
Features:
- Full automated rollback: The runner Helm release and Control Plane agent record are cleaned up automatically.
- Database-aware restore: Scales up only the database type (MongoDB or PostgreSQL) that was originally deployed; falls back to attempting both for clusters connected before this feature was added.
- Configurable replicas: Users can control how many replicas to restore for MinIO (
--minio-replicas), MongoDB (--mongo-replicas), and PostgreSQL (--postgres-replicas).
disconnect reverts the Testkube Agent back to the standalone state it was in before it was connected to a Testkube Control Plane.
Any resources or results that were created in Testkube while the agent was connected to the Control Plane will be lost.
testkube marketplaces <command>
Added CLI commands to browse and install TestWorkflows from the Testkube Marketplace - Read more
Control Plane
Improvements
- Following live TestWorkflow logs is now more reliable for customers using the CLI or integrations. Reconnects resume from the right place instead of hanging, replaying the wrong data, or getting stuck when the Kubernetes log stream goes silent unexpectedly.
- The JUnit Report tab now automatically opens the first failed test and also allows for filtering on skipped tests - Read more.
Images
Updated image registry references in Helm values: container images are now sourced from DockerHub instead of Google Artifact Registry, including dependencies such as MongoDB, MinIO, PostgreSQL, and kubectl. Helm charts will continue to be published and stored in Google Artifact Registry.
PostgreSQL
- Added support for supplying the PostgreSQL DSN from Kubernetes secrets for all Testkube services.
- Added support for running PostgreSQL with CloudNativePG, alongside the existing bundled PostgreSQL deployment to preserve backward compatibility. This includes support for installing the CloudNativePG operator and provisioning an operator-managed PostgreSQL cluster. Read more.
- Added migration command to migrate MongoDB to PostgreSQL - Read more
Solve vulnerabilities
The following CVEs were solved by upgrading libraries and packages in the Testkube images: CVE-2026-34986 and CVE-2025-27144.
Upgrade 3rd party images and helm charts
- MongoDB to
8.2.7. - PostgreSQL to
18.3. - KubeCTL to
1.35.4.
Agent
Allow Multiple GitOps Agents in the same namespace
Fixed the naming of the GitOps Agent Kubernetes resource to allow multiple instances of it in the same namespace to sync Testkube Resources to multiple Testkube environments.
PostgreSQL
- Added an option to source the PostgreSQL DSN from a Kubernetes secret.
- Added support for running PostgreSQL with CloudNativePG while keeping the existing bundled PostgreSQL deployment for backward compatibility. This includes support for installing the CloudNativePG operator and provisioning an operator-managed PostgreSQL cluster. Read more: PostgreSQL
Upgrade 3rd party images and helm charts
- MongoDB to
8.2.7. - PostgreSQL to
18.3.
Fixes
- TestWorkflows are now easier to run on OpenShift and similar restricted clusters. You can opt out of automatic pod
fsGroupinjection when your platform expects security policies to assign that value.
Patch Release v2.8.3 (2026-04-07)
Control Plane is available in Helm chart v2.331.3 and the Agent is available in Helm chart v2.8.3.
Control Plane v2.331.3
Improvement & Fixes
- Licensing Limits logic: fix how is counting floating agents across environment.
- UX in Create Trigger: Remove autocomplete from create new trigger form.
- AI Assistant PostgresDB with SSL: Improved SSL configuration for integrating with PostgresDB instance.
Agent v2.8.3
Improvement & Fixes
- Resilient git clone with basic auth: configure git credential store to survive HTTP redirects during clone.
Patch Release v2.8.2 (2026-03-30)
Control Plane is available in Helm chart v2.331.2 and the Agent is available in Helm chart v2.8.2.
Control Plane v2.331.2
Improvements and fixes
- New! Testkube on-prem installations no longer require
testkube-agent. New environments start with the Control Plane owning Testkube Resource management by default. testkube init demono longer installs the agent bundle.- SCIM Server lock contention: write lock contention now returns 409 instead of 429. This is the correct status per RFC 7644 Table 9 for POST/PUT/PATCH/DELETE conflicts. The library passes it through, and IdPs treat it as retriable.
- Follow long Test Workflow executions: include a keepalived signal to avoid timeouts while following long Test Workflow executions from CLI and integration plaforms.
- SSO Authentication: fix SSO login failure caused by sending static "sso" as connector_id.
Agent v2.8.2
Improvements and fixes
- Installation OSS Agent: remove operator and param as it's already deprecated, replacing by Testkube CRDs only.
testkube-agentis deprecated in thetestkube-enterprisechart.- Testkube Agent Global Template: manage inline and named Global Templates from Testkube Agent Helm chart properties. When upgrading the
testkube-runnerHelm chart from2.7.x, inline global templates must now setglobalTemplate.inline: true. Withoutinline: true, the chart treats the global template as a named external template and requiresglobalTemplate.name. - Testkube Agent Name: allow override agent name from Testkube Agent helm chart property
runner.name. - Follow long Test Workflow executions: improve the behavior when the underlying execution is healthy but the live log stream is interrupted by the network path between the CLI runner and the Control Plane.
Patch Release v2.8.1 (2026-03-30)
Control Plane is available in Helm chart v2.331.1 and the Agent is available in Helm chart v2.8.1.
Control Plane v2.331.1
Improvements and fixes
- Added MongoDB jobs to upgrade from version
8.0.15to8.2.5. Read more - SuperAgents can no longer be removed before migration.
Agent v2.8.1
Improvements and fixes
- Added MongoDB jobs to upgrade from version
8.0.13to8.2.5. Read more
Monthly Release v2.8.0 (2026-03-26)
This release is available in Helm chart v2.331.0. Control Plane and Agent versions are now unified at v2.8.0. (Check out Agent release notes).
What's new!
Login via Google
You can now sign in to our SaaS using your Google account. This adds another convenient login option alongside our existing authentication providers.
Workflows Updates
Vault Integration
You can now use HashiCorp Vault (KV v2) as a backend in Credentials API. Workflow secrets are read from Vault at execution time instead of being stored in Testkube's database. Useful for teams that already manage secrets in Vault and do not want to duplicate them. As of now, this is available only for on-prem installations.
Supports Kubernetes auth, static token auth, and Vault Enterprise namespaces.
Read more: Credentials — Vault Backend Setup
Resource Group Credentials
Credentials can now be scoped to Resource Groups, sitting between Environment and Workflow in the precedence hierarchy.
Read more: Credentials
Workflow Marketplace
The Dashboard now includes a workflow catalog where you can browse pre-built TestWorkflows, configure parameters, preview the generated YAML, and create & run the workflow.
Read more: Workflow Marketplace
Share Data Between Steps
Steps can now pass values and files to each other — write outputs or drop files in one step, read them in any later step.
Read more: Sharing Data Between Steps
Fail-Fast for Parallel Steps
Parallel steps now support a failFast option. When one worker fails, the remaining workers are aborted immediately instead of continuing to run.
Read more: Parallel Steps
Backstage Integration
A new Testkube plugin for Backstage is available. It provides a read-only view of environments and recent executions in your Backstage portal, with links back to the Testkube Dashboard.
Read more: Backstage Integration
Queued Execution Timeouts
Executions waiting in the queue can now be automatically aborted after a configurable timeout. Configurable at the installation level using environment variables.
Read more: Testworkflow Timeouts
Multiple GitHub App Installations
Testkube now supports multiple GitHub App installations. If your organization uses multiple GitHub organizations, all valid installations work at the same time — invalid ones are skipped.
Read more: GitHub Apps with Testkube
Agent Key Rotation
The CLI now supports rotating agent secret keys. This is useful if you need to rotate the secret key for an agent.
Read more: Agent Key Rotation