> For the complete documentation index, see [llms.txt](https://docs.frends.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.frends.com/release-notes/frends-6.3/version-6.3.1.md).

# Version 6.3.1

Released on 26th of August 2026

This release includes the new features released with Frends 6.3, listed in [New Features](/release-notes/frends-6.3/new-features.md), as well as improvements and bug fixes from the earlier releases.

{% hint style="info" %}
On-premise Cross-platform Agents require .NET Runtime 10.0.7 or newer to be installed.
{% endhint %}

{% hint style="warning" %}
Remember to check the [Breaking Changes](/release-notes/frends-6.3/breaking-changes.md) for this version of Frends before updating.
{% endhint %}

## Process and Subprocess

### Improvements

* The "Skip logging result and parameters" option is now available on the Inclusive Decision shape; previously the shape always logged the return value of the last executed node in each branch.
* Process instance lists now show a distinct warning icon for long-running Process instances that failed to resume while dehydrated, so they can be told apart from instances paused normally at a checkpoint.
* Shape and decision branch names can no longer contain the double-quote (`"`) character, which broke Process compilation.
* The Checkpoint shape now reports a clear error when its Correlation ID resolves to `null` instead of an internal list-expansion message.

### Bug fixes

* Fixed Expression shapes using a C# collection expression (`[]`) producing invalid C# and a cryptic compilation error.
* Fixed an orphaned element parameter left behind by a deleted Task shape causing a "Task is not compatible with the selected target framework" validation error that could not be cleared.
* Fixed duplicate Process Trigger activation rows being created by concurrent deploys.
* Fixed Redo (Ctrl+Y) after undoing a paste losing all element parameters and rendering the pasted shapes as the wrong type.
* Fixed Undo not restoring the condition expression of an Inclusive Decision branch, only its name.
* Fixed deleting a Process variable clearing the descriptions of the remaining variables.
* Fixed the variable type textbox in the code shape advanced settings moving the text cursor to the end on every keystroke.
* Fixed the first key press being dropped when replacing selected text in the code editor.
* Fixed manual Trigger parameters being lost when copying a Process from one Process editor to another.
* Fixed the delete icon missing for array-type Task parameters and for header items in the HTTP return shape.
* Fixed the Process diff view hiding shapes inside a group container when the group was added after the shapes.
* Fixed the Process diff view failing to open changed Tasks with non-string parameter values, such as the byte array `Content` of the HTTP SendBytes Task.
* Fixed the Process change log and diff being unavailable to users with the View rule.

## API Management and API Policies

### Bug fixes

* Fixed OpenAPI specifications containing control characters becoming unreadable after being saved.
* Fixed the orphaned API Process warning overlapping and hiding the API specification list in the API Management view.
* Fixed the Frends API `effective-api-policy` operation failing with "Multiple matching endpoints found" for valid paths, and corrected the enum schemas in the Frends API OpenAPI document so enum parameters show the proper values.

## Agent

### Improvements

* `EnableClientCertificateValidation` is now tri-state: when unset, the Agent requests a client certificate from HTTPS callers only when at least one HTTP Trigger requires certificate authentication, fixing clients (such as older Java `HttpURLConnection`) that dropped the connection when unexpectedly asked for a certificate.
* New `IgnoreErrorOnStartup` option on mapped drive configuration lets the Agent start even when a network share cannot be mounted; by default the Agent still fails fast.
* Kubernetes StatefulSet Agents now keep their local configuration store on a per-pod persistent volume, so a restarted pod no longer starts from an empty store and no longer receives traffic before its Triggers are synchronized.
* The Kubernetes StatefulSet README now covers upgrading existing StatefulSets and migrating from Deployment workloads.
* Kubernetes Agent groups (Deployment and StatefulSet) no longer show the per-Agent download menu and the full Agent settings editor; they use the same read-only view as Cloud Agents.
* The Linux Agent systemd unit now sets `MemorySwapMax`, and the Linux README includes a swap recommendation and a corrected `MemoryHigh` description.

### Bug fixes

* RabbitMQ, Azure Service Bus, Azure Event Hub and File Watch Triggers now retry when their broker, namespace, hub or watched directory is unavailable while the Agent starts or resumes, reporting the error until they succeed instead of failing permanently.
* RabbitMQ and Azure Service Bus Triggers now report an error state when the connection drops at runtime and clear it on recovery; previously they stayed "healthy" in the UI while disconnected.
* Fixed RabbitMQ Triggers never resuming message consumption after the Agent was paused and resumed.
* Fixed the RabbitMQ Trigger staying active without certificate authentication when "Use client certificate" was enabled but no certificate details were given; missing details are now a validation error.
* Fixed RabbitMQ `403 ACCESS_REFUSED` errors on Agent startup caused by per-Agent-group users being created without the `configure` permission.
* Fixed the Azure Event Hub Trigger exceeding its configured concurrency limit after failed checkpoint updates, and improved its error logging.
* Fixed Shared State deadlocks when several executions performed the first write to the same key concurrently.
* Fixed the Linux Agent writing its log files under the installation directory instead of `/var/log/FRENDS`.
* Kubernetes Agent manifests now mount a writable volume at `/var/log/FRENDS`, fixing Agent pods crashing on startup under `readOnlyRootFilesystem`.
* Fixed the Linux Agent installer zip being corrupted when downloaded from a Web Portal hosted on Linux.
* Fixed the Windows Agent installer download failing with "MSI modification verification failed" when the Web Portal runs on Linux or Kubernetes.

## AI Connector and MCP

### Improvements

* MCP Trigger tool access can now be granted to OAuth applications, so tokens from external OAuth providers are accepted at the Agent MCP endpoint in addition to Private Application tokens.
* OAuth applications can now define MCP scopes; a token from an MCP-enabled OAuth application is honoured at the Agent MCP endpoint only when it contains every configured scope.
* The Agent MCP endpoint now supports the MCP authorization discovery flow (`/.well-known/oauth-protected-resource` metadata and `WWW-Authenticate` challenges), so interactive MCP clients such as Claude Code, Claude Desktop, VS Code and MCP Inspector can sign in through the external OAuth provider instead of pasting a token.

### Bug fixes

* Fixed `mcp_tools` wildcard groups such as `test.*` not being supported in MCP tool authorization filters.
* Fixed the Save Changes bar appearing for Viewer users on MCP Trigger schema editors and AI Connector fields.
* Fixed the MCP Trigger type missing from the start element toolbox settings.
* Fixed duplicate AI model entries being created every time the model definitions were imported.

## UI and Web Portal

### Improvements

* The legacy Product Tours page has been removed; its URL redirects to the front page.
* The Edit action has been removed from bulk Process actions, where it only opened the first selected Process.
* Manually importing a Task version that has already been imported is now blocked, preventing duplicate database entries and errors.

### Bug fixes

* Fixed onboarding tutorials stopping halfway and completed steps not being recorded as complete.
* Fixed the Environment variable editor not always accepting `0` as the value of an integer variable.
* Fixed the Process list being incorrectly filtered after navigating back from a Process instance list.
* Fixed the Process list not refreshing after tags were removed while a tag filter was active.
* Fixed a "Cannot find agent group data for group 'undefined'" error after deleting all finished Process instances and navigating back.
* Fixed links in the "Used by processes" and "Subprocesses" column popovers opening a blank page, and removed the duplicate "Used by processes" entry from the Subprocesses list column selector.
* Fixed the Agent event message detail panel overflowing its container for long unbroken text such as stack traces.
* Fixed the close button of the "Create new variable" modal being misaligned when the variable group name wraps to a second line.
* Fixed misaligned buttons in the Environment variable import settings modal.
* Fixed the styling of the copy-to-clipboard button on error toasts.
* Fixed a "Rule name updated" toast being shown when saving a monitoring rule's configuration without changing its name.
* Fixed the "Revoke all tokens" button being enabled for Viewer users.
* Fixed the in-app Help articles and Messages (Intercom) failing to load because the Intercom domains were missing from the Content Security Policy.

## Security and Authentication

### Improvements

* TLS certificate validation for the S3 pre-signed URI client can now be enforced with the `EnforceServerCertificateForPreSignedUri` Agent setting;
* TLS certificate validation for Native AI file downloads can now be enforced with the `NativeAiSettings:EnforceServerCertificateForNativeAiDownloads` Agent setting; it is off by default so downloads behind private or self-signed certificates keep working.
* Processes created or imported by a user with Allow tag rules are now stamped with that user's Allow tags, so they stay visible to the user without an administrator adding tags afterwards.

### Bug fixes

* Role creation, editing and deletion now require the `UserManagement.Admin` activity like the other user-management operations; previously they were gated only by `ApiKeyManagement.Admin`, which allowed privilege escalation.
* Changing the feedback URL now requires the `Common.FrendsOps` activity instead of view-level access.
* Fixed OAuth token validation permanently failing for an issuer when fetching its OIDC metadata failed while the Agent started (for example during a transient Azure AD outage); the issuer now stays registered and validation recovers automatically.

## Log Service and Observability

### Improvements

* Audit log cleanup now deletes in batches, so `ClearAuditLog` no longer holds long-running locks or generates large transactions.

### Bug fixes

* Fixed an over-long value (such as a long path or query string) failing the whole HTTP log batch insert and losing every entry in the batch; values are now truncated to the column limit with a `...[truncated]` marker.
* Fixed the HTTP log `QUERY` column being silently truncated at 1000 characters without a marker; it now carries the same `...[truncated]` marker as the other columns.

## Infrastructure, Build, and Dependencies

### Improvements

* `READ_COMMITTED_SNAPSHOT` and `ALLOW_SNAPSHOT_ISOLATION` are now always enabled on SQL Server for the ConfigurationStore, LogStore and AgentStore databases on startup; the `--doNotEnableSnapshotIsolation` Database Initializer parameter has been removed.
* The built-in NuGet server can now store Task packages in S3-compatible object storage; opt in with `Storage:S3ObjectStorage:UseBaGetS3Storage` and set `NugetBucketName`.

### Bug fixes

* Fixed the Database Initializer hanging when changing database isolation settings, and a clear error is now shown when snapshot isolation cannot be enabled.
* Fixed the Database Initializer rejecting PostgreSQL connection strings that contain keywords Npgsql 8 no longer supports (such as `Convert Infinity DateTime`) with a misleading `Keyword not supported: 'host'` error; such connection strings now stay on the PostgreSQL path.
* Fixed SQL Server connection strings whose host name contains `.db` (for example `sql01.db.corp.local`) being detected as SQLite.
* Fixed BaGetter S3 storage applying `Storage:S3ObjectStorage:BucketPrefix` as an object-key prefix inside the NuGet bucket; the bucket is now addressed solely by `NugetBucketName`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.frends.com/release-notes/frends-6.3/version-6.3.1.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
