Skip to main content

Self-hosted Retool stable release 4.86

Retool releases a version on the stable channel each quarter. A stable release is generally four versions behind the cloud-hosted version at the time.

Preparation and testing of a stable version occurs approximately four weeks prior to its release. Stable releases are rigorously tested before they are published. As the release cycle is less frequent, administrators can more easily maintain and upgrade deployments.

Retool supports each stable release for six months. During this time, Retool will release patch updates that contain bug fixes or security updates. Patch updates do not contain functionality changes and can be applied more quickly than performing a full version upgrade.

After six months, a stable release is considered deprecated. You can continue using a deprecated release but it will no longer receive updates. At this time, you should upgrade to the latest stable release.

Documentation for stable releases

Retool provides versioned product documentation for supported stable releases. When browsing Retool Docs, use the version dropdown menu in the navbar to switch to a relevant version.

Self-hosted Retool 4.86​

Latest releaseCurrently supported

ReleaseReleasedDigest
First4.86.0Nov 11, 2026sha256:137c040178257261121b2d382fe164b2322051b47c0e731bc5ac21b7891318a1
Latest4.86.0Nov 11, 2026sha256:137c040178257261121b2d382fe164b2322051b47c0e731bc5ac21b7891318a1
Best practice
Subscribe to the Atom feed for 4.86 to get notified when new patch releases are available.

Major changes in this release

New features, significant changes, and any actions required when upgrading.

Type ↑Change ↕
newGeneral availability of Retool's MCP server
Retool's MCP server is now generally available on cloud and self-hosted instances.
newBuild resource environment switching for published apps
Prompt the app building agent to use resource environments in published apps.
newCustom authentication for embedded apps
Business and Enterprise organizations can authenticate embedded apps with the Retool API.
newContinued hardening of Retool's infrastructure
A hardened code-executor image is now available for self-hosted instances.
newUse external MCPs in app builder
The app building agent can use tools from external MCP servers connected as resources.
newEmbed apps in iframes
Embed apps in other apps, classic apps, and external websites using an iframe.
newAzure Key Vault Secrets Manager
Self-hosted organizations can store and retrieve secrets from Azure Key Vault.
newManual file management for app building
Add folders and files manually from the Code tab of the app builder without prompting the agent.
newMessage queueing
Queue up to five messages in the app builder chat while the agent is working.
newAccess policies for PostgreSQL resources in public beta
Enterprise organizations can enforce table, column, and row-level data access policies on PostgreSQL resources.
newApp builder supports all resource integrations
The app builder supports all of Retool's resource integrations, including native and generic integrations.
newGeneral availability of app builder
Build production-ready React apps using natural language, MCP-compatible coding agents, or imported React code.
newDebug console for the app builder
Inspect apps, surface errors and logs, and resolve issues with the agent from the app builder's debug console.
newSpend controls for AI usage
Set limits on AI credit and token usage for users, groups, and models.
newService users for workflows
Choose a permission group as a workflow's run identity so scheduled, webhook-triggered, and query-triggered runs use that group's access.
newPrivate npm registries for apps
Enterprise organizations can install npm packages from private registries in Retool apps.
newCreate PostgreSQL and REST API resources with natural language
Prompt the app building agent to create resources directly from the app builder.
improvedMicrosoft SQL integration version 3.0 restores support for array values
Version 3.0 of the Microsoft SQL integration accepts array values in query parameters.
improvedExpanded source control managers for multi-instance releases
Retool now supports more source control managers for app multi-instance releases.
deprecatedConclusion of public beta for Assist
Retool has concluded the public beta for Assist in the classic app builder.
deprecatedDeprecation of preinstalled libraries in custom authentication JavaScript steps
Retool is deprecating preinstalled third-party libraries in custom authentication JavaScript steps.
deprecatedDeprecation of Windows Authentication for Microsoft SQL Server resources
Retool is deprecating Windows Authentication for Microsoft SQL Server resources.
deprecatedDeprecation of the BigID resource type
Retool is deprecating the BigID resource type.
deprecatedMicrosoft SQL integration versions 1.0 and 2.0 removed
Retool removed versions 1.0 and 2.0 of the Microsoft SQL integration. Resources must use version 3.0.
24 changes

Patch release notes

Bug fixes, improvements, and changes across all patch versions in this release.

Type ↑Description ↕
4.86.0968 changes↑
addedAdded support for a common class of recursive CTEs against row-protected tables. [#81656]
addedAdded Claude Opus 5 as an available model for Agents and BYOK AI resource queries. [#81831]
addedAdded Gemini 3.6 Flash model to Google AI resource queries. [#81834]
addedAdded a source control protection action to the publish modal in the new app builder. [#81869]
addedAdded a visible keyboard focus state to the top navigation tabs. [#81888]
addedAdded an AI token usage tab to the Usage Analytics settings page. Also enabled the in-product NPS survey by default for builders and admins. [#81889]
addedAdded startup telemetry reporting for code executor environment variables on self-hosted instances. [#82042]
addedEnabled manual and agent-initiated file deletion in the new app builder by default. [#82132]
addedAdded a safeguard to block sharing a function into a library package it directly imports. [#82162]
addedAdded audit logging for destination overrides in OpenAPI spec fetches and authentication setup. [#82166]
addedAdded a source control footer to the version history tab in the new app builder. [#82190]
addedAdded tooltips to the copy, like, and dislike buttons in the new app builder's chat. [#82220]
addedAdded a footer to the Version history panel for managing which release is pinned. [#82258]
addedAdded Retool MCP to the official Claude plugin for Cloud and self-hosted instances. [#82259]
addedAdded Japan region routing for the Bedrock Claude Haiku 4.5 model so ap-northeast-1 and ap-northeast-3 requests use the JP inference profile. [#82343]
addedAdded GitLab support for detecting merged pull requests in the new app builder's Publish modal, switching the action button between Open merge request and Push changes. [#82368]
addedAdded a queue panel to the composer in the new app builder that lets you view, edit, reorder, and clear queued prompts while the agent is running. [#82465]
addedAdded a Beta badge to the Access tab in the resource editor for resources with data access enforcement enabled. [#82596]
addedAdded per-model API capability configuration for custom AI provider resources. [#82703]
addedAdded the ability to view and remove file attachments on queued prompts in the new app builder's chat panel. [#82720]
addedAdded an edit-app footer to apps served through the iframe-embedded path in the new app builder. [#82807]
addedAdded the ability to rename a git branch from the Version History panel in the new app builder. [#82875]
addedAdded support for custom headers on AWS Bedrock AI provider resources. [#82955]
addedAdded Include deleted records option to Salesforce SOQL queries. [#82988]
addedAdded zoom and pan controls to the new app builder debug console timeline. [#83081]
addedAdded user-toggleable data security enforcement setting for PostgreSQL resources on self-hosted deployments. [#83204]
addedAdded the ability to delete a folder and its contents from the new app builder's editor, and fixed two bugs where a refused delete could leave files incorrectly hidden or a deleted file could reappear moments later. [#83364]
addedAdded a warning dialog that lists which workflows will stop running before you enable data access enforcement on a resource. [#83385]
addedAdded a dismissible banner on the Resources list page to help admins discover data access policies. [#83587]
addedAdded a What's New card promoting data access policies to the home page. [#83589]
addedAdded a human-in-the-loop authentication flow so the app builder agent can prompt for OAuth when an MCP resource's tools require it. [#83606]
addedAdded Azure Cosmos DB as a supported resource in the new app builder, so agents can query and write documents and browse containers and partition keys in the schema browser. [#83663]
addedAdded a /api/v2/usage/ai_credits public API endpoint that returns AI credit usage broken down by day, root organization, model, provider, user, and credit pool. [#83737]
addedAdded an Always show scrollbars option to the appearance settings of the Table and legacy Table components. [#83738]
addedAdded a distinct unrestricted access outcome to audit trail logs so organization admins can see when a query ran without data security policy restrictions applied. [#83898]
addedEnabled multi-instance releases by default for apps built with the new app builder. [#83941]
addedAdded a UI to view AI credit usage from within Settings. [#83983]
addedAdded the ability for the AI agent to delete folders in a single step, not just individual files. [#83996]
addedAdded the branch author's name to each branch in the new app builder's Version History panel. [#84163]
addedAdded a Build/Plan mode toggle to the app builder's agent chat and enabled the Markdown file preview view in the code editor for all users. [#84195]
addedAdded a warning to the RetoolDB connection string modal about configuring session-level options through external clients. [#84214]
addedAdded a read-timeout backstop for streamed query responses so a hung connector stream can no longer leave a query waiting indefinitely. [#84230]
addedAdded a Test connection button to Notion resources. [#84241]
addedAdded support for the Authorization Code Grant with PKCE OAuth2 flow on GraphQL resources. [#84242]
addedAdded a banner and an Update to latest code button on automations running outdated pipeline code. [#84419]
addedAdded Claude Fable 5.1 BYOK support for AI queries and the app builder on Anthropic and AWS Bedrock. [#84647]
addedAdded support for using Google Cloud Datastore resources in the app builder. [#84716]
addedAdded support for using Google Vertex AI resources in the app builder. [#84719]
addedAdded support for using legacy OpenAPI resources in the new app builder. [#84723]
addedAdded support for using RethinkDB resources in the app builder. [#84725]
addedAdded support for using CouchDB resources in the app builder. [#84726]
addedAdded support for using Amazon SNS resources in the app builder. [#84727]
addedAdded support for using Tavily resources in the app builder. [#84769]
addedAdded app deployment details to the public source control deployment API responses. [#84853]
addedAdded GPT-5.4 mini, GPT-5.4 nano, and GPT-6 Astra models for AI queries. [#84855]
addedAdded support for apps built in the new app builder to the public release manifest API. [#84938]
addedAdded Gemini 3.8 Flash to Google Gemini and Vertex AI providers for BYOK AI queries. [#85069]
addedAdded MCP audit log events for tool invocations, sessions, and OAuth grants to Audit Trails. [#85107]
addedAdded the org's branded favicon to published and preview apps in the new app builder. [#85161]
addedAdded support for apps built in the new app builder to the public source control releases API. [#85189]
addedAdded GPT 6 Sol, GPT 6 Luna, and GPT Image 2.5 models for AI queries. [#85232]
addedAdded a persistent Try the new app builder button to Classic apps in editor mode. [#85262]
addedAdded keyboard shortcuts to toggle the chat and change history panels in the new app builder. [#85276]
addedAdded Azure Key Vault as a secrets manager provider without requiring an experiment to be enabled. [#85293]
addedAdded forwarding of the ui_locales parameter during SSO login so identity providers can show their login page in the chosen language. [#85354]
addedAdded a toast notification when a user can't approve a function due to missing resource access. [#85415]
addedAdded a confirmation prompt before discarding unsaved access policy changes on a resource. [#85435]
addedAdded a screen reader announcement option to the Text component in classic apps, so its content is read aloud when it changes. [#85481]
addedAdded OpenID Connect discovery and UserInfo support for MCP OAuth clients to enforce workspace domain restrictions. [#85548]
addedAdded an admin-only setting, available via the UI and the public REST API's updated_app_builder_enabled field, to control which AI provider resources the new app builder can use for its own chat and agent responses. [#85553]
addedAdded the Retool CLI in public beta, for building, managing, and publishing apps from the command line. [#85574]
addedAdded an exclude_trashed query parameter to the public GET /api/v2/apps endpoint to omit trashed apps from results. [#85632]
addedAdded a --gallery option to retool init and a retool gallery list command to the Retool CLI, letting a new app start from an existing App Gallery app. [#85642]
addedEnabled the app builder agent to repair a resource it just created when the connection test fails, instead of prompting for all values again. [#85643]
addedAdded support for the new app builder agent to create MSSQL, Redshift, CockroachDB, AlloyDB, Denodo, and Snowflake Postgres resources. [#85660]
addedAdded the retool status command to the Retool CLI, reporting local and server branch state, preview status, pending serverless function approvals, and resource type freshness, and added a retool pull --from option to merge a named source with authenticated Git access. The retool start command now also warns when the local checkout is behind main. [#85689]
addedAdded Gmail, Google Drive, and Microsoft Graph as supported wrapped resources for backend functions in the new app builder. [#85737]
addedAdded the retool classic export command to the Retool CLI, which downloads a classic app's Toolscript. [#85755]
addedAdded Claude Opus 5.5 model for AI queries and the new app builder. [#85763]
addedAdded a UI for configuring AI spend limits at the organization, user, and group level. [#85788]
addedAdded conversations.inviteShared to the Slack resource, so Slack resources can invite external users to Slack Connect channels. [#85807]
addedAdded visibility for Retool CLI pushes in the app builder chat, alongside a redesigned publish status card. [#85873]
addedAdded support for GPT 6 Astra in the app builder with BYOK. [#85920]
addedAdded a pending function approvals summary to the output of retool push in the Retool CLI. [#85982]
addedAdded support for MotherDuck as a resource the app builder agent can use. [#86159]
addedAdded support for CircleCI as a resource the app builder agent can use. [#86165]
addedAdded support for ServiceNow as a resource the app builder agent can use. [#86166]
addedAdded support for Cassandra as a resource the app builder agent can use. [#86167]
addedAdded Amazon SQS as a supported resource for backend functions in the new app builder. [#86176]
addedAdded Apache Kafka as a supported resource for backend functions in the new app builder. [#86180]
addedAdded Elasticsearch as a supported resource for backend functions in the new app builder. [#86182]
addedAdded paging and name filters to the Retool MCP list tools for workflows, groups, folders, and writable app folders, and added app_url to the retool_list_apps and retool_get_app tools. [#86241]
addedAdded an Export theme option to the theme library card's menu, letting you download a theme as a JSON file. [#86269]
addedAdded Claude Sonnet 5.5 and GPT-6.1 Sol as models for AI queries. [#86492]
addedAdded a folder_id query parameter to GET /api/v2/workflows to list only the workflows in a folder. [#86575]
addedAdded a logout() function and a useRetoolAppsAndFolders hook to the new app builder, so apps can sign users out and list the apps and folders the current user can see. [#86694]
addedAdded name_contains filtering to the Groups and Folders APIs, and paging and filtering to the Workflows API. [#86749]
addedAdded support for chrome-extension:// origins in custom Content Security Policy settings. [#86893]
addedAdded a debug console to the new app builder editor with Errors, Logs, and Timeline tabs, plus a status bar summary of errors and warnings with a Fix with AI action. [#86915]
addedAdded backend function output and error logs to the debug console in the new app builder. [#86933]
addedAdded support for multi-instance releases of apps in the app builder when using GitLab for source control. [#87053]
addedAdded a Return response as a file query option that returns REST, S3, Azure Blob, and Retool Storage responses as base64. [#87102]
addedAdded PAGE_VIEW audit log events for published apps built with the new app builder. [#87164]
addedAdded a warning in App Security settings when the frame-ancestors CSP directive allows any HTTPS site to embed apps. [#87229]
addedAdded the POST /api/embed-url/external-user/revoke endpoint to end a single Retool Embed session before it expires. [#87231]
addedAdded the retool_add_group_members and retool_remove_group_members MCP tools to manage permission group membership and pending invites from an AI client. [#87238]
addedAdded retool_disable_user and retool_enable_user tools to the Retool MCP server. [#87244]
addedAdded space filtering to the retool_list_audit_logs MCP tool and a retool_list_user_spaces tool to find space IDs. [#87292]
addedEnabled Claude Sonnet 5.5, GPT-6 Sol, and GPT-6.1 Sol as models in the app builder. [#87373]
addedAdded Bitbucket support for multi-instance releases of app builder apps in Source Control. [#87413]
addedAdded MCP tools to enable admins to create, rename, and delete permission groups. [#87422]
addedAdded a channel field to audit event metadata that records whether a change came through MCP, the Retool CLI, or a personal access token. [#87431]
addedAdded file renaming by the AI agent and manual frontend and backend file and folder creation in the app builder. [#87490]
addedAdded the retool_reset_user_2fa, retool_set_user_attribute, and retool_delete_user_attribute tools to the Retool MCP server. [#87496]
addedAdded MCP tools for administrators to list, create, update, and delete roles, list role grants, and list permission scopes. [#87505]
addedAdded support for using MCP resources in backend functions in the app builder. [#87554]
addedAdded support for sending a message history, not only a single instruction, to AI providers in the app builder. [#87581]
addedAdded support for multi-instance releases of apps built in the app builder on Azure Repos. [#87602]
addedAdded support for multi-instance releases of apps built in the app builder on AWS CodeCommit. [#87605]
addedAdded role_id, user_id, and group_id filters and limit and next_token paging to GET /api/v2/role_permissions/role_grants. [#87634]
addedAdded support for the Gemini 4 Argon model in Google Gemini and Vertex AI resources and in the app builder. [#87697]
addedEnabled message queuing in the app builder chat, so builders can queue up to five prompts while the agent is busy. [#87753]
addedAdded newer Stripe API versions, including 2026-09-30.endive, to the Stripe resource API version dropdown and set 2026-09-30.endive as the default for new resources. [#87795]
addedAdded Rename actions to the app builder code editor toolbar and file tree folders. [#87937]
addedAdded the us and eu multiregion locations to the Google Vertex AI resource location picker. [#88100]
addedAdded a label in the app builder editor that marks a backend file as a serverless function or a plain helper. [#88160]
addedAdded a Beta setting to enable presigned uploads for Retool Storage. [#88175]
addedAdded the DISABLE_RETOOL_MANAGED_AI environment variable to block AI requests that use Retool-managed credentials. [#88222]
addedAdded support for custom model lists on AI provider resources, which restrict the models a resource can use. [#88259]
addedAdded a warning banner on the Resources page for Microsoft SQL resources that use Windows Authentication, which is deprecated. [#88317]
addedAdded a Resources page warning for resources whose custom authentication steps load preinstalled libraries. [#88319]
addedAdded the retool checkout -b command to the Retool CLI to create a branch and switch to it. [#88391]
addedAdded an informational note on legacy Loop blocks in workflows that explains how to switch to the updated Loop block. [#88460]
addedAdded the retool_login_status MCP tool to enable clients to view the current OAuth user, organization, client, and scopes. [#88496]
addedAdded a RESOURCE_QUERY_ACCESS_DENIED audit log event when a query run from a workflow is refused access to a resource. [#88749]
addedEnabled natural language resource connection in the app builder agent by default. [#88788]
addedAdded service users to the Audit Logs API and the MCP audit tool, with a serviceUserId filter. [#88839]
addedAdded service users to the Audit Logs page, with a filter for them. [#88840]
addedAdded a Beta setting to enable service users for workflows. Assign a permission group as a workflow's run identity so scheduled, webhook, and query-triggered runs use that group's access instead of an admin's. Available on Business plans and above. [#88916]
addedAdded a Beta setting in advanced settings to enable Enterprise admins to configure private npm registries for app builder apps and Retool CLI installs. [#88918]
addedAdded support for the GPT 6.1 Terra model in OpenAI resources and AI queries. [#88924]
addedAdded naming of the retool clone directory after the app, and cloning by app name or slug in the Retool CLI. [#89043]
addedAdded optional secondary agent executor JWT public and encryption keys to enable key rotation without interrupting running sandboxes. [#89073]
addedAdded an Open group settings button to the run identity access warning for admins. [#89693]
addedAdded Custom Auth support for resources used by app builder apps, including OAuth and redirect steps. [#90364]
fixedFixed an error in the provider scope modal for AI provider resources when the user has read-only access. [#79775]
fixedFixed migrated Retool AI queries persisting unused image and multimodal model fields onto provider resources. [#80919]
fixedFixed the new app builder's package.json write validator to report the exact expected version when it rejects a system-dependency change, instead of an opaque message. [#81396]
fixedFixed the Ask User prompt in the new app builder to display as a card above the composer input, with support for multi-step, multi-select, and abortable responses. [#81448]
fixedFixed a Safari navigation error in the new app builder by replacing the browser history router with an in-memory router, preventing security errors on every in-app navigation inside self-hosted app iframes. [#81586]
fixedFixed Retool Database permissions being granted to all users to match behavior with Retool Storage, Retool Email, and Retool AI. [#81719]
fixedFixed externally-synced branches in the new app builder getting an auto-generated description instead of keeping their original branch name. [#81736]
fixedFixed form field values being cleared when initialData is null, without blocking the Default value property. [#81765]
fixedFixed the legacy serverless function runner failing to detect missing per-user authentication for connectors such as Google Sheets. [#81776]
fixedFixed the new app builder and Services Debugging page incorrectly reporting Temporal as missing on self-hosted instances using Retool-managed Temporal. [#81811]
fixedFixed a performance issue that slowed backend artifact publishing in the new app builder. [#81816]
fixedFixed several reliability issues in the Admin Onboarding Hub. Admins are now correctly routed to the normal apps view instead of the onboarding experience, the Set up your spaces step now completes when spaces already exist, and workspace join request approvals and rejections now generate dedicated audit log events. [#81822]
fixedFixed embedded apps hanging on an indefinite loading spinner instead of surfacing boot failures. [#81866]
fixedFixed branch names in the new app builder being overwritten when a new chat thread started on an already-named branch. [#81882]
fixedFixed the invite signup flow so admins can disable role and skill level questions for a single org instead of only globally. [#81934]
fixedFixed MCP thread tools for the new app builder to return distinct thread and branch identifiers instead of requiring clients to infer them from the mutable git branch ref name. [#81946]
fixedFixed two browser tabs on the same branch in the new app builder incorrectly sharing one sandbox, which could cause a new tab to adopt another tab's in-progress sandbox. [#81961]
fixedFixed app preview links to resolve using the branch identifier instead of the thread identifier. [#81975]
fixedFixed the app builder editor to report and roll back file deletions refused due to insufficient resource access, instead of silently removing the file until the next page refresh. [#81994]
fixedFixed library package publishing to correctly resolve the org billing plan, mirroring the concurrency rate-limit and kill-switch handling already used for app publishing. [#81999]
fixedFixed the AI agent to check image dimensions before reading an uploaded image, avoiding an API error when an image exceeds the model's readable dimension limit. [#82003]
fixedFixed in-flight HTTP requests being dropped during agent executor proxy shutdown instead of draining first. [#82013]
fixedFixed app-level theme color overrides being silently overridden by the org theme in the new app builder sandbox. [#82017]
fixedFixed the app builder help menu link to point to the correct documentation page. [#82022]
fixedFixed adaptive thinking not being enabled for claude-sonnet-5 requests in the new app builder. [#82038]
fixedFixed the new app builder preview getting stuck after fixing a broken import caused by a deleted file. [#82040]
fixedFixed preview builds failing for apps with multiple chat threads on different branches. [#82044]
fixedFixed a race condition that could corrupt publish state when publishing the same app branch multiple times concurrently. [#82045]
fixedFixed detached workflow resource queries continuing to run after the workflow run was stopped or canceled. [#82065]
fixedFixed app loading from source control failing when a repository repack job was in progress, by retrying once. [#82068]
fixedFixed the policy status badge in data access policies to reflect pending enforcement changes instead of only the policy's own saved state. [#82071]
fixedFixed generated apps in the new app builder losing organization theme CSS after a warm sandbox restore. [#82076]
fixedFixed the new app builder's dev server and publish build silently ignoring settings in a committed Vite config file, which could produce a published bundle with no entry point. [#82078]
fixedFixed a headless workflow run classification bug where the headless flag was dropped when the resolved admin user was passed back into the run context. [#82091]
fixedFixed the request access form on the login page to clear after a successful submission and prevent duplicate submissions. [#82092]
fixedFixed serverless function signatures that declare no params being rejected instead of generating a hook. [#82114]
fixedFixed form fields in classic apps incorrectly retaining a previous record's value when navigating between records. [#82127]
fixedFixed publishing in the new app builder becoming permanently blocked with a thread-already-published error after new commits landed. [#82142]
fixedFixed a timeout in the groups API endpoint for organizations with many users. [#82173]
fixedFixed authentication errors in the editor preview by partitioning the sandbox iframe auth cookie. [#82175]
fixedFixed a regression that could incorrectly deny users access to resources and queries. [#82184]
fixedFixed a bug where sandbox hydration could delete resource type files or crash setup. [#82188]
fixedFixed an open file tab remaining after its file was deleted in the new app builder. [#82203]
fixedFixed ClickHouse queries to bind parameters as prepared statements instead of inlining them. [#82204]
fixedFixed oversized center-mode images in Retool Mobile on iOS's new architecture. [#82240]
fixedFixed non-idempotent database migrations that could break replaying an upgrade to Retool 4.0. [#82251]
fixedSurfaced grid backend errors in the table creation and edit paths in the UI. [#82254]
fixedFixed the app builder AI agent to share chat sandboxes per branch and user, keeping tabs in sync when switching threads. [#82267]
fixedFixed a race condition in the app builder AI agent that could create duplicate chat threads on load. [#82268]
fixedFixed stepped spinner icons animating out of alignment with their 8-slot design. [#82291]
fixedFixed the Publish dialog showing a stale app protection status after another user changed it while the dialog was open. [#82306]
fixedFixed offline Retool Storage uploads failing after re-authentication by refreshing session credentials and enforcing per-user ownership on queued uploads. [#82312]
fixedFixed the app preview in the new app builder getting stuck on a loading screen during live edits by upgrading the underlying dev server and its hot-reload handling. [#82318]
fixedFixed the Markdown component dropping the last word of a line on Android due to a text measurement mismatch. [#82334]
fixedFixed the Layout Compiler resizing a component's parent grid unexpectedly when hovering over nested droppables during a resize. [#82350]
fixedFixed a bug that prevented Retool from creating agent branches on GitLab, which caused app publishing to fail. [#82354]
fixedFixed a delay of about 25 seconds in JavaScript code execution caused by the sandbox process not exiting after writing its result. [#82370]
fixedFixed an internal error that appeared in Assist chat when a model was not mapped in the legacy billing configuration. [#82381]
fixedFixed the data access enforcement engine failing to load on self-hosted instances due to a missing libpg-query runtime dependency. [#82388]
fixedFixed UI text in the app builder that was getting cut off. [#82389]
fixedFixed a bug where a failure in deprecated Assist telemetry could skip AI credit billing and leak an error into the chat stream. [#82392]
fixedFixed generated TypeScript resource type declarations for DynamoDB and Google Sheets so backend code type-checking catches invalid usage instead of silently passing. [#82394]
fixedFixed AI agent thread snapshots failing to restore in the new app builder after switching threads. [#82400]
fixedFixed a regression that blocked the Opus model for managed keys in the new app builder. [#82448]
fixedFixed an issue where preview builds in the new app builder could fail to upload because of incorrect branch identification. [#82450]
fixedFixed an issue where users without edit permission on a resource could still see an active Delete option in the resource menu. [#82452]
fixedFixed a confusing error message shown when trying to protect or unprotect an app that was already in the target protection state. [#82463]
fixedFixed a build issue that prevented Python custom libraries requiring native extensions, such as psycopg2, from building in the self-hosted Code Executor image. [#82464]
fixedFixed leaked connections caused by concurrent Temporal client creation. [#82473]
fixedFixed the Publish button staying stuck in a saving state after switching threads in the new app builder. [#82511]
fixedFixed native Python library builds, such as psycopg2 and cryptography, in the self-hosted Code Executor image. [#82519]
fixedFixed a missing drag preview when dragging a component into a ListView, and fixed resized component previews overflowing their parent width. [#82527]
fixedFixed a bug where submitting a chat message before threads finished loading could send it to the wrong AI resource. [#82540]
fixedFixed personal folder permission checks that could throw an error and return HTTP 422 instead of resolving ownership. [#82566]
fixedFixed a bug that blocked users with write access from loading an OpenAPI spec in the guided REST query editor. [#82575]
fixedFixed app identifier collisions when syncing apps built with the new app builder across instances via source control. [#82581]
fixedFixed the new app builder writing the wrong source control identifier to package.json on push, causing naming conflicts on sync. [#82589]
fixedFixed empty subfolders that had access only through an ancestor folder grant disappearing from the folder list and search. [#82595]
fixedFixed an intermittent bug that could return an empty type stub file when generating typesheds for the googletrans library in backend functions. [#82611]
fixedFixed an issue where app builder agent requests using a model outside the built-in set could be silently dropped instead of completing. [#82656]
fixedFixed a workflow error message that exposed internal security implementation details to users. [#82673]
fixedFixed a race condition on Android that could cause Google Sheets streaming queries to return unusable raw data instead of transformed rows. [#82679]
fixedFixed a bug where publishing a new app builder app with no publishable backend files failed to write a publish manifest, incorrectly prompting some organizations to republish for a custom domain. [#82682]
fixedFixed the new app builder's AI agent sometimes hardcoding colors or giving up instead of applying app-level theme overrides, by pointing it at appTheme.css. [#82694]
fixedFixed the resource access policy editor so that refreshing the page no longer discards an in-progress draft, and added a confirmation prompt before navigating away with unsaved changes. [#82697]
fixedFixed the app builder's save-error dialog so long error text scrolls instead of pushing action buttons off screen. [#82745]
fixedFixed branch description auto-naming so it keeps updating on every message until a non-default name is generated. [#82748]
fixedFixed the settings sidebar so the Advanced Settings link is no longer obscured by the browser tooltip at the scroll edge. [#82749]
fixedFixed the source control test_deploy endpoint to validate that commit_sha is non-empty instead of returning a generic server error. [#82763]
fixedCorrected outdated wording in the sandbox save-error and custom domain messages about starting new threads and republishing. [#82764]
fixedFixed the Move option being enabled for protected app builder apps in the multi-select menu, which caused errors when attempting to move them. [#82773]
fixedFixed classic app Stack components resizing incorrectly in Grid containers. [#82790]
fixedFixed preview link generation to stay hidden for apps with no commits, since there is nothing to preview. [#82792]
fixedFixed permission dropdown submitting access writes when the selected level was unchanged. [#82808]
fixedFixed package.json metadata not updating when duplicating or syncing new app builder apps. [#82809]
fixedFixed a canvas crash caused by plugin models stored as plain objects instead of Immutable maps in the app model. [#82844]
fixedReplaced the auto-dismissing CSP update notification in the app builder preview with a persistent banner that stays until the preview is reloaded or the banner is dismissed. [#82852]
fixedFixed missing error feedback when resource creation is blocked due to insufficient permissions. [#82864]
fixedFixed backend save errors in the new app builder being silently ignored instead of surfaced to the user. [#82877]
fixedFixed the sandbox launcher so it no longer silently discards sandbox stderr output during restore. [#82878]
fixedFixed gRPC resources with no authentication causing 500 errors in the Public API v2 /resource_configurations endpoint. [#82884]
fixedFixed the missing AI credits pricing alert to report the actual model id instead of a generic message. [#82885]
fixedFixed the app builder to capture a thread snapshot after the sandbox resets following a publish. [#82887]
fixedFixed Bitbucket source control sync deleting files beyond the first page of paginated results. [#82899]
fixedFixed the workflow code executor bundle to resolve compiled JavaScript files at runtime. [#82933]
fixedFixed the Query Library to retain the in-progress query body when switching between resources of the same type. [#82936]
fixedFixed self-hosted Helm deployments with a separate git-server pod so the backend correctly proxies git v2 requests using the RR_GIT_SERVER_HOST setting. [#82965]
fixedFixed automatic preview reloads failing on some self-hosted deployments in the new app builder. [#82999]
fixedFixed Kubernetes client-node and watcher handling to correctly process pod status changes. [#83000]
fixedFixed source control sync failing after protecting, unprotecting, and then reprotecting an app builder app. [#83016]
fixedFixed white-label mobile app archive generation failing. [#83030]
fixedFixed MCP backend calls resolving to the admin organization instead of the correct Space. [#83037]
fixedFixed the group-by-type sort switch incorrectly appearing in the new app builder debug console. [#83063]
fixedFixed superseded errors not clearing from the debug console Errors tab in the new app builder. [#83064]
fixedFixed row selection in the new app builder debug console when clicking inside an expanded log detail. [#83065]
fixedFixed OAuth token exchange, refresh, and authentication checks to ignore a resource's configured SSL and mTLS client certificates for any host other than the base URL. [#83066]
fixedFixed debug console logs in the new app builder keying to thread instead of branch. [#83074]
fixedFixed timeline hover card positioning in the new app builder debug console. [#83080]
fixedFixed a bug where dropping a List View component inside another List View could throw an error and fail to render. [#83123]
fixedFixed new agent conversation threads that could be created without a linked app repository, which caused the sandbox to fail to start with a server error. [#83132]
fixedFixed publish status checks blocking app publishing when continuing from a previous thread in the new app builder. [#83133]
fixedFixed app builder editing sessions failing with an authentication error after being open for more than one hour. [#83148]
fixedFixed low-contrast dropdown text in dark mode by deriving popover and accent text color from WCAG contrast instead of a fixed luminance cutoff. [#83166]
fixedFixed AI provider secret references not resolving correctly in resource queries. [#83177]
fixedFixed the Check out branch control to stay disabled while the agent is working, preventing a branch switch mid-turn. [#83197]
fixedFixed uploaded chat attachments to be deleted from the sandbox when removed before the prompt runs. [#83219]
fixedFixed Toolbox Next styling not applying to portaled modals in the new app builder. [#83222]
fixedFixed the self-hosted bundle including test files that broke imports in the Retool CLI. [#83226]
fixedFixed JavaScript queries and Code Executor appearing unreachable on IPv6-primary networks. [#83228]
fixedFixed branch tip not being recorded as parent of publish commits in the new app builder. [#83247]
fixedFixed recurring header display issue in Assist. [#83260]
fixedFixed MySQL streaming queries stalling due to field injector queue mode mismatch. [#83265]
fixedFixed Table component cells breaking onto separate rows in Retool Mobile on native iOS. [#83273]
fixedFixed PostgreSQL streaming feature flag not being toggleable in resource settings. [#83288]
fixedFixed an issue where embedded apps could get stuck on the loading spinner and never finish loading. [#83290]
fixedFixed AI prompt box on homepage not appearing for enterprise admins. [#83307]
fixedFixed deprecated connector version warnings appearing for demo resources. [#83371]
fixedFixed the mobile app's DatePicker component clipping the last character of the selected date on Android. [#83380]
fixedFixed published Retool React apps sometimes resolving to the wrong resource environment during the OAuth connect flow, which could cause an Invalid oauth2_auth_url error. [#83400]
fixedFixed GitHub resource calls failing from generated OpenAPI clients in the new app builder. [#83407]
fixedFixed a race condition in the new app builder where a push under a just-renamed branch name could create a duplicate branch instead of updating the renamed one. [#83476]
fixedFixed low AI credits email notifications so an org receives at most one per billing period instead of one after every credit top-up. [#83484]
fixedFixed the new app builder's resource queries to pass through SSO tokens, so REST resources that rely on %USER_OAUTH2_ACCESS_TOKEN% no longer fail with a 401. [#83485]
fixedFixed the release manifest pull request flow getting stuck in a loading state on source control providers that don't support pull request status polling, such as Azure DevOps, and added a fallback to view the pull request directly. [#83493]
fixedFixed OpenAPI server variables to accept template strings and dynamic values such as config variables and current_user references. [#83515]
fixedFixed the AI agent's theme-switching instructions so it stops trying to read a nonexistent /frontend/orgTheme.css file. [#83516]
fixedFixed headless workflow runs, including child workflow runs and re-minted sandbox tokens, losing the signal that lets data access policies block queries against protected resources. [#83523]
fixedFixed the app builder to fall back to a default value instead of showing an error when an agent's tool description omits a required field, and corrected the edit label shown for plan-only changes. [#83529]
fixedFixed Action Center pagination so requesting the next page returns only that page instead of the rest of the list. [#83537]
fixedFixed the app builder AI agent to persist prompt context between turns so its prompt cache is reused instead of missed on every turn. [#83551]
fixedFixed the bundled AI model registry so google/gemini-3.6-flash correctly exposes its reasoning effort levels and token budgets. [#83571]
fixedFixed MCP OAuth discovery URLs to stay on the requested host instead of pointing at an internal address. [#83574]
fixedFixed protected app preview links not showing a stale warning after new sandbox edits, and added a syncing state when rebuilding a stale preview from the version history panel. [#83597]
fixedFixed transient connection errors during source control sync with Azure Repos, adding automatic retries instead of failing the sync outright. [#83622]
fixedFixed new dependencies of baseline system packages being blocked by the package age gate, which had been causing the app builder sandbox to fail to start. [#83624]
fixedFixed queries against Jira and other OpenAPI resources that omit a server URL to use the resource's configured server instead of failing. [#83645]
fixedFixed the native dropdown arrow rendering off-theme and pinned too far to the right on <select> controls in the new app builder. [#83650]
fixedFixed source control protection status not being fully removed when renamed apps with naming conflicts are unprotected. [#83660]
fixedFixed spec-backed REST API queries against OpenAPI 3.0 specs that declare relative server URLs. [#83675]
fixedFixed source control deployment failing when duplicate app UUIDs exist in the external repository. [#83685]
fixedFixed source control deployment creating duplicate release manifests when the manifest fetch fails. [#83733]
fixedFixed source control content fetching to return empty lists instead of errors for missing paths in Bitbucket, Azure Repos, and CodeCommit. [#83743]
fixedFixed an issue where renaming a branch during a source control sync could cause the sync to be silently skipped instead of retried under the new name. [#83761]
fixedFixed an issue where unrecognized or live-only AI models could run in the app builder agent on a managed key that should have been blocked for the organization's plan. [#83766]
fixedFixed long-running JavaScript code executions being killed by a deployment restart before they could finish within the expected 5 minute window. [#83807]
fixedFixed the new app builder's chat threads to tolerate a mismatch between the live AI model registry and the backend's bundled snapshot, so thread creation and model selection no longer break when a model exists on only one side. [#83815]
fixedFixed the integrate changes banner staying visible in protected apps after merging in the latest changes, and fixed useIntegrateChanges sometimes choosing the wrong sync method. [#83828]
fixedFixed a workflow error where Python blocks calling a workflow function failed with a NameError. [#83830]
fixedFixed a bug where stopping an agent turn immediately after sending a message could fail to cancel it, leaving the agent running while the UI showed it as stopped. [#83847]
fixedFixed workflow triggers failing with a path not allowed error when run, queried for schema, or checked for status from a sandboxed workflow. [#83918]
fixedFixed the app library breadcrumb to always show the current folder as a non-clickable label, so folders with duplicate names in a nested path are distinguishable. [#83926]
fixedFixed the Fix with AI button remaining enabled after exhausting AI credits. [#83956]
fixedFixed a bug where POST /api/sendVerificationEmail returned an HTTP 500 error instead of an HTTP 400 error when no firstName was available. [#83971]
fixedFixed MCP API calls losing the forwarded Space host when RETOOL_BACKEND_URL is configured, which could reject valid Space requests with an unauthorized_domain error. [#83980]
fixedFixed the publish button in the new app builder to stay disabled for protected apps when a new branch has no unpublished changes. [#83987]
fixedFixed POST /api/folders/trash, POST /api/folders/:folderId/contents, and POST /api/folders/trash/bulkDelete returning a 500 error instead of a 422 error when the request body was missing or had invalid folderIds or pageIds. [#83995]
fixedFixed POST and DELETE /api/pages/:pageId/favorite returning a 500 error instead of a 422 error for a non-integer pageId. [#84002]
fixedFixed PATCH /api/scim/v2/Groups/:groupId returning a 500 error instead of skipping a user sid that belongs to a different organization. [#84013]
fixedFixed an unclear error when renaming an app while a previous rename was still syncing to source control; the error now names the app that could not be found. [#84019]
fixedFixed AI usage tracking in the new app builder to report OpenAI cache-write tokens instead of always recording zero, correcting a cost undercount. [#84025]
fixedFixed ResourceDao.getByNames so it always scopes results to the requesting organization, preventing a code path from returning another organization's resources. [#84030]
fixedFixed the /api/checkReadiness endpoint to return a 503 status code instead of 500 when the instance is not ready. [#84031]
fixedFixed an issue where switching branches in the new app builder while loading older working-branch commits could show a disconnect error. [#84050]
fixedExcluded users in an org's External Users group from the in-product NPS survey. [#84064]
fixedFixed an issue where agent sessions could get stuck reconnecting to their sandbox and never finish loading. [#84077]
fixedFixed Permissions v1 so one group's environment-level resource grant no longer overrides another group's grant. [#84087]
fixedFixed a Retool React agent session that could hang instead of recovering after repeated sandbox authorization errors. [#84092]
fixedFixed a console error that could appear when a Retool React app's sandbox was not yet ready to report remote ref status. [#84114]
fixedFixed stale SSO OAuth2 tokens on REST queries using %USER_OAUTH2_ACCESS_TOKEN% or %USER_OAUTH2_ID_TOKEN%. [#84138]
fixedFixed the code editor not reflecting backend function changes after a git merge or pull, and fixed folder deletions being reported as failed even when most files were removed. [#84148]
fixedFixed the new app builder's third-party license check to accept license names written in prose form. [#84215]
fixedFixed a resource schema cache issue that could return another user's schema when a resource used dynamic templating. [#84216]
fixedFixed a bug where a malformed screen ID in a role-grant API request returned a 500 error instead of a 404. [#84218]
fixedFixed a delay before a queued message appeared in the new app builder's chat when starting a new project. [#84222]
fixedFixed a 500 error that could occur when opening a public app. [#84227]
fixedFixed several database connector streaming paths that had no maximum response size enforcement. [#84231]
fixedFixed FileInput, FileDropzone, and FileButton Change events reading stale file values. [#84233]
fixedFixed duplicate role-grant requests returning a 400 validation error instead of a 409 conflict with a clear message. [#84238]
fixedFixed the new app builder's preview and publish jobs being keyed on a legacy thread identifier instead of the app's branch, which could misroute preview builds. [#84264]
fixedFixed links and redirects in the new app builder failing to open in the top browser frame on self-hosted and custom domain deployments. [#84265]
fixedFixed branch renaming in the new app builder to fall back to the server when the sandbox is disconnected or the rename times out, instead of failing outright. [#84273]
fixedFixed the in-app support breakage report form pointing to an outdated URL. [#84295]
fixedFixed JSON user attribute values overlapping adjacent rows in Settings and displaying as [object Object] in a user's attribute assignments. [#84303]
fixedFixed a server error when running workflow REST API query blocks on resources that require a custom-auth login. [#84327]
fixedFixed the new app builder's new-file name-collision check to compare names case-insensitively, so two backend files or folders differing only in case can no longer be created side by side. [#84335]
fixedFixed workflow Python blocks failing outright instead of retrying when Code Executor returned a capacity error. [#84352]
fixedFixed a multi-select anchor becoming misaligned with its components until the page was refreshed. [#84360]
fixedFixed the v3 MSSQL connector to accept array query parameters again by restoring array-to-string coercion, and improved the error message when an object is passed instead. [#84379]
fixedFixed the new app builder's chat composer to show the correct height and placeholder while it loads, preventing content from jumping when the composer appears. [#84388]
fixedFixed permission errors on lockbox-protected endpoints returning 500 instead of 400 or 404. [#84389]
fixedFixed MCP dynamic client registration rejecting VS Code and other clients that request the device code grant. [#84393]
fixedFixed chat file uploads and downloads in the new app builder failing after a sandbox reconnect, by refreshing the upload access token alongside the sandbox token. [#84397]
fixedFixed full source-control deploys writing an empty publish commit and advancing main for apps in the new app builder whose files had not changed, which needlessly staled every active agent thread for that app. [#84413]
fixedFixed buffered integration errors not surfacing on queries that stream results. [#84441]
fixedFixed folder id requests with an invalid id returning 500 instead of 422. [#84445]
fixedFixed page and workflow move requests with invalid bodies returning 500 instead of 422. [#84446]
fixedFixed folder favorite requests with an invalid folder id returning 500 instead of 422. [#84447]
fixedFixed keystroke lag in the function playground when a large tabular response was displayed. [#84468]
fixedFixed encrypted media playback being blocked in apps built with the new app builder served in an iframe. [#84492]
fixedFixed the space switcher not showing for non-admin users who belong to multiple spaces. [#84519]
fixedFixed protected app previews getting stuck on Rebuilding after creating or rebuilding one. [#84533]
fixedFixed permission read paths returning a server error instead of skipping unresolvable role grants. [#84585]
fixedFixed tall dialogs in apps built with the new app builder scrolling the whole modal instead of just its body. [#84590]
fixedFixed missing per-iteration results in workflow run logs for loop blocks using object storage. [#84592]
fixedFixed folder permission removal deleting indirect grants inherited from a parent folder. [#84605]
fixedFixed the new app builder discarding a Select-to-Edit draft after an accidental dismissal. [#84607]
fixedFixed MCP API requests losing Space routing when connecting through the configured internal transport. [#84628]
fixedFixed multipage main frame and list-instance card layout issues with the Layout Compiler. [#84744]
fixedFixed an issue where the new app builder may fail if Azure Repos returns a missing branch error when used with source control. [#84764]
fixedFixed threads getting stuck on a deprecated or plan-blocked model pin during compaction and on load. [#84789]
fixedReturned a 422 instead of a 500 error for an invalid folder ID in workflow folder requests. [#84805]
fixedFixed a blank canvas when navigating between apps with the Layout Compiler enabled. [#84806]
fixedFixed unwanted spacing gaps below auto-height components in the Layout Compiler. [#84828]
fixedFixed a server error when running a serverless function with multiple resources. [#84834]
fixedFixed sandbox credentials expiring before refresh on agent sessions longer than 2 hours. [#84854]
fixedFixed backend function uploads exceeding the size limit silently returning a generic error instead of a clear message. [#84873]
fixedFixed a missing published-app blob on Azure storage returning a server error instead of a not-found response. [#84932]
fixedFixed agents triggered by a workflow incorrectly grouping with unrelated subagent chains on the Agents monitoring page. [#84967]
fixedFixed MCP direct-to-sandbox file uploads failing because clients were given an unreachable internal address. [#84986]
fixedFixed an MCP client with a stale session ID getting stuck instead of automatically re-initializing. [#84987]
fixedFixed the live model registry refresh task not running in self-hosted worker processes, leaving the registry stale. [#84991]
fixedFixed Azure Key Vault secret names starting with a digit being rejected even though Azure allows them. [#85008]
fixedFixed release artifact creation failing on Azure DevOps repositories configured with basic authentication. [#85013]
fixedFixed the ability to enable auto-approve without access to all resources used by an app. [#85064]
fixedFixed the View in [provider] source control link for apps in the new app builder pointing to the wrong directory. [#85102]
fixedFixed Postgres queries with duplicate column names returning null instead of the last non-null value. [#85110]
fixedDisallowed editing apps in the new app builder when an org has version control locked. [#85114]
fixedFixed publishing a new app builder app failing when its bundle included a file with a space in its name. [#85117]
fixedFixed OAuth login redirects for published apps dropping query parameters from the original URL. [#85119]
fixedFixed MCP tool calls that could succeed in the editor but fail after publish for dynamic tool references. [#85132]
fixedFixed the new app builder's preview banner's Updated time freezing instead of reflecting the latest build. [#85143]
fixedHid the View button for protected apps in the new app builder instead of showing a broken branch-switching menu. [#85147]
fixedFixed app builder Preview failing with a missing export error after a Retool CLI push added a backend function. [#85151]
fixedFixed components inside a newly created Form not being draggable or resizable until reload. [#85191]
fixedFixed disabled and certificate-backed managed secrets appearing in Azure Key Vault resource listings. [#85194]
fixedFixed a deadlock that could cause logout and password reset requests to fail. [#85202]
fixedFixed a 500 error when resetting a password if the confirmation email failed to send. [#85205]
fixedFixed an intermittent invalid authentication callback error when logging into an embedded app. [#85213]
fixedFixed browser back button navigation and removed a stray query parameter for published apps in iframes. [#85228]
fixedRemoved the preview and markdown toggle for read-only markdown files in the new app builder. [#85242]
fixedFixed a 500 error when buying AI credits without a payment method on file. [#85243]
fixedFixed a published app's Edit app link leaving the custom domain and forcing a re-login in the new app builder. [#85259]
fixedFixed classic apps incorrectly opening in the new app builder and failing to load. [#85270]
fixedFixed orphaned resource type definition files left behind after a CLI pull removed or renamed resources. [#85288]
fixedFixed the Data tab so renamed resources are correctly attributed to their new name. [#85297]
fixedFixed npm packages with a SEE LICENSE IN license alternative being incorrectly blocked from installation in the new app builder. [#85304]
fixedRemoved a shared rate limit on MCP token introspection that could reject healthy traffic. [#85307]
fixedFixed editor-tier users losing own-level resource access during the self-hosted object permissions V1 to V2 migration. [#85319]
fixedFixed a crash in the Workflows editor caused by a failed lazy-loaded module retry. [#85324]
fixedFixed OAuth requests for PKCE and Salesforce connections that broke when the scope parameter was empty. [#85335]
fixedFixed tooltip placement for header icons in the new app builder. [#85368]
fixedFixed streaming REST API queries dropping the request body from query metadata. [#85404]
fixedFixed a bug where publishing an app could remain locked for up to 40 minutes after a previous publish finished. [#85409]
fixedFixed the app builder chat losing track of a tagged resource after it was renamed. [#85432]
fixedFixed publishing apps for editors without direct access to all resources or workflows used in approved functions. [#85437]
fixedFixed workflow blocks reporting success when a piped query actually failed, so retry policies now trigger correctly. [#85438]
fixedFixed OAuth 2.0 authentication for REST API resources with no OAUTH2_TOKEN placeholder in the request, which previously sent every request without the access token. [#85506]
fixedFixed Business plan customers getting a 403 error when creating an object role with Apply Universally enabled. [#85512]
fixedFixed the MCP server incorrectly allowing classic apps to be used with app builder tools instead of rejecting them with guidance to convert first. [#85520]
fixedFixed embedding for apps in the new app builder so they no longer require a custom domain. [#85522]
fixedFixed AI credit usage timestamps and enforcement to consistently use a single timezone, preventing confusion near daily reset boundaries. [#85524]
fixedFixed the app builder agent's chat composer ignoring messages sent while a resource collection form was open. [#85562]
fixedFixed source control dropping default AI model selections from apps and Query Library entries. [#85563]
fixedFixed presigned URLs from S3, GCS, and Azure Blob storage resources being corrupted by the secret sanitizer. [#85646]
fixedFixed false-positive scope errors in the classic app editor for multipage apps when a page-scoped query's template string field referenced a component on the same page. [#85649]
fixedFixed MCP tool discovery to reflect the organization's actual plan entitlements. [#85674]
fixedFixed an issue in the new app builder where agent edits triggered a full page reload instead of applying instantly in the preview. [#85700]
fixedRemoved the 20-page cap on the app builder's Classic-to-new-app-builder migration. [#85706]
fixedFixed the environment selector in the new app builder showing a stale environment after switching, which could leave preview data out of sync with the environment actually in use. [#85711]
fixedFixed backend functions with type-only imports being incorrectly flagged as needing approval. [#85728]
fixedFixed the Retool CLI's retool clone command ignoring the directory argument. [#85735]
fixedFixed DELETE /appTheme/:id returning 500 instead of 400 for a non-numeric theme ID. [#85757]
fixedFixed the protected app Open pull request button staying enabled when there were no changes to publish. [#85761]
fixedFixed the Retool CLI recommending retool init --force as a retry step in cases where that command could not succeed. [#85765]
fixedFixed the Function Playground results pane in the new app builder showing misleading output, such as scalars rendered as one-row tables and function parameters mixed into results; it now shows the function's actual return value and includes a copy-to-clipboard button. [#85810]
fixedFixed uploaded SSL/TLS certificates reverting to No file selected on the resource form. [#85850]
fixedFixed workflow libraries reappearing after deletion and remaining installed in runs. [#85851]
fixedFixed a class of bugs where manual file edits in the app builder could be silently dropped without notifying the user. [#85881]
fixedFixed deprecated models continuing to appear in the app builder's model pickers, new-thread defaults, and workspace default settings. [#85925]
fixedFixed existing Team-plan environments becoming inaccessible or incorrectly plan-locked. [#85932]
fixedFixed components rendering in the wrong position below a fixed-height control, such as a Select listbox, in classic apps using the Layout Compiler. [#85950]
fixedFixed the republish call to action incorrectly appearing for self-hosted organizations. [#85971]
fixedFixed an error analyzing imported apps that contained backslashes in file names. [#85987]
fixedFixed AI token usage totals undercounting cached Anthropic calls and always reporting zero for streamed Bedrock text actions. [#85994]
fixedFixed retool status in the Retool CLI failing with a 401 Unauthorized error. [#85997]
fixedFixed OAuth token request headers sending literal secret and config variable templates instead of resolved values. [#86009]
fixedFixed source control provider configuration losing existing settings, such as repository version and subdirectory, on instance restart or upgrade when configured through environment variables. [#86017]
fixedFixed REST resource queries returning a 502 error when response metadata exceeded the ingress buffer size. [#86027]
fixedFixed app builder chat threads on a Retool model being switchable to a different provider mid-thread, and fixed Claude receiving unverifiable reasoning content from earlier model responses. [#86088]
fixedFixed the function approval button not appearing for mutative functions that referenced a resource by its deprecated or renamed name. [#86098]
fixedFixed the publish modal briefly showing an incorrect version number before release information finished loading. [#86099]
fixedFixed the app builder chat allowing use when no AI provider is configured, now blocking usage and showing an error banner directing users to contact their admin, with a fallback to Retool models when available. [#86104]
fixedFixed organizations with no resolvable plan tier being excluded from feature rollouts once a tier-based rollout reached one hundred percent. [#86117]
fixedFixed fuzzy search in Select components not matching option labels when spaces were typed in place of hyphens. [#86128]
fixedFixed structured REST queries incorrectly taking the OpenAPI field path and dropping query parameters and path variables. [#86132]
fixedFixed MCP-created app building threads failing on their first turn for organizations limited to Retool models. [#86156]
fixedFixed app builder chat threads on a Retool model not generating thread titles and branch descriptions. [#86188]
fixedFixed POST /api/validate-nonce returning 500 instead of 400 for a non-string nonce. [#86194]
fixedFixed POST /api/resources to return 400 instead of 500 when the request body is invalid. [#86221]
fixedFixed a dropped publish connection showing a generic server error instead of a clear network error message. [#86234]
fixedFixed workflow release endpoints returning 500 instead of 400 for a malformed release ID. [#86235]
fixedFixed POST /api/grid/retooldb/runMigration returning 500 instead of 404 when the environment has no Retool DB resource. [#86250]
fixedFixed the custom component collection file endpoint returning a server error for a malformed collection or revision id, it now returns a bad request response instead. [#86253]
fixedFixed the organization blob endpoint returning a server error for a malformed blob id, it now returns a bad request response instead. [#86256]
fixedFixed table preview in access policies returning 500 instead of 404 when the queried table does not exist. [#86258]
fixedFixed the new app builder thread messages endpoints returning 500 instead of 400 for invalid message content. [#86265]
fixedFixed CLI pushes being incorrectly rejected when an app's agent-written files existed on a thread branch that the push itself did not modify. [#86272]
fixedFixed numbered list items with inline formatting in agent chat wrapping onto ragged columns and losing spaces between words. [#86278]
fixedFixed workflow-triggered agent runs failing immediately with no tool calls or model response. [#86279]
fixedFixed external apps opt-in getting stuck after a duplicate role grant, which could leave an organization unable to finish enabling external apps. [#86289]
fixedFixed the MCP authentication dialog briefly showing a false missing resource error while resource data was still loading. [#86299]
fixedFixed false 'is not defined' warnings for existing components and queries in the JavaScript code editor in classic apps. [#86319]
fixedFixed JavaScript executor proxy requests continuing after the sandbox disconnects, which could rerun queries. [#86429]
fixedFixed dynamic icon components reloading the page when referencing a missing icon. [#86520]
fixedFixed source control UUID mappings being lost when resources and workflows are unprotected, preventing reprotection from retaining repository identity. [#86556]
fixedFixed source control deployments failing when a protected resource declared a suffixed symbol. [#86557]
fixedFixed the permissions migration leaving admin groups without folder access scopes. [#86598]
fixedFixed the new app builder caching non-spec responses from OpenAPI spec URLs and never fetching them again. [#86632]
fixedFixed POST /api/requestAccessToOrg returning 500 instead of 4xx for a malformed email or orgId. [#86647]
fixedFixed the new app builder ignoring OpenAPI operations that have no operationId. [#86664]
fixedFixed creating a branch from a missing Azure Repos branch returning 500 instead of 404. [#86899]
fixedFixed function-approval-status returning 500 instead of 404 for a commit that is not in the app repository. [#86900]
fixedFixed email auto-join assigning the wrong seat type when External Apps is turned on. [#86910]
fixedFixed workflow blocks being reported as successful when their query fails, so retry policies now run. [#86921]
fixedFixed the new app builder choosing a default AI model that no available resource could run. [#86945]
fixedFixed a 403 error when triggering a workflow from a module embedded in a classic app for users without workflow permissions. [#86950]
fixedFixed GET /api/playground/:queryId/latestSave to return 400 instead of 500 for invalid query IDs. [#86978]
fixedFixed requests hanging when the backend cannot lease a database connection from the pool. [#87013]
fixedFixed embedded apps in the new app builder blocking full-screen, clipboard, and geolocation access. [#87046]
fixedFixed GET /api/scim/v2/Groups/:groupId returning a server error instead of a client error for non-numeric group IDs. [#87105]
fixedFixed the permissions V2 migration failure banner continuing to show for organizations that had already finished migrating. [#87175]
fixedFixed release creation failing with the error Element not protected for source control elements stuck in a pending unprotect state. [#87182]
fixedFixed Azure AI queries in the new app builder failing when no deployment name was set. [#87212]
fixedFixed source control deploys reporting Git provider rate limits as bad commits and emailing admins. [#87254]
fixedFixed source control Deployment Details to show app builder app names and repo paths instead of UUIDs for failed syncs. [#87293]
fixedFixed sign-in pages allowing signed-in users to log in as a different user, which left open tabs with the first user's state. [#87302]
fixedFixed the Retool CLI not pulling workflow type declarations, so local TypeScript checks could not resolve workflows. [#87341]
fixedFixed the Code tab in the new app builder not refreshing its file list after restoring a commit. [#87389]
fixedFixed the Code Executor leaking file descriptors from abandoned warm workflow jobs, which could exhaust descriptors on long-running instances. [#87399]
fixedFixed a backend memory leak where pooled Postgres connections kept finished requests in memory, causing heap usage to grow over time. [#87406]
fixedFixed the detail pane reloading when you click the left pane of a split-screen tablet tab in the mobile app editor. [#87410]
fixedFixed the Copy verification log button reporting no log after the permissions migration. [#87438]
fixedFixed the merge commit created when merging the default branch into a feature branch not being signed on GitHub. [#87449]
fixedFixed users without the App Builder role landing on a Forbidden page after first sign-in to the new app builder. [#87465]
fixedFixed the live AI model registry refresh ignoring HTTP proxy settings on instances that reach the internet through a proxy. [#87495]
fixedFixed resource.rawRequest dropping the request body on DELETE requests in backend functions in the app builder. [#87517]
fixedFixed app builder backend function type declarations advertising Retool Storage StreamRaw methods that always fail, and added a warning that read and download buffer the entire file in memory. [#87608]
fixedFixed the app builder editor sometimes showing a loading spinner indefinitely on first load. [#87614]
fixedFixed localStorage.setValue() in classic apps overwriting values written by other browser tabs. [#87665]
fixedFixed Ask AI in generate mode not showing errors when a query generation request failed. [#87707]
fixedFixed AWS Secrets Manager ignoring the configured region when authenticating with an IAM role ARN. [#87713]
fixedFixed an error when clicking a file icon in the merge branch editor for protected apps. [#87714]
fixedFixed token counting and embedding truncation failing on text that contains the literal endoftext special-token marker. [#87723]
fixedFixed terminal color codes appearing in app builder publish failure messages in the source control Deployment Details dialog. [#87749]
fixedFixed auto-height ListView components in classic apps not scrolling at some browser zoom levels and display scales. [#87762]
fixedFixed Notion queries failing when the Notion-Version header was not set by sending 2022-06-28 by default. [#87840]
fixedFixed source control sync failing for newly created branches in AWS CodeCommit repositories. [#87841]
fixedFixed MCP OAuth discovery by allowing unauthenticated requests to the protected resource metadata path, including the path-aware /mcp URL. [#87934]
fixedFixed the group permissions page showing the wrong environment badge for Retool Storage access. [#87951]
fixedFixed the Retool CLI reporting an expired session when a session refresh failed for a temporary reason such as a network error or server outage. The CLI now retries once and asks you to sign in again only when the host rejects the refresh. [#88061]
fixedFixed the app builder chat showing an error chip for user input form calls with invalid parameters that the agent corrects on its own. [#88127]
fixedFixed streamed thinking and text blocks in the app builder chat appearing out of order or disappearing before they were saved. [#88128]
fixedFixed files that call a deleted workflow blocking pushes, publishes, and function approvals in the app builder. These calls now show a non-blocking warning. [#88214]
fixedFixed the app builder switching from Temporal to pg-boss on deployments with Retool-managed Temporal. Added RR_POSTGRES_ORCHESTRATION_BACKEND to select pg-boss explicitly. [#88216]
fixedFixed source control sync retrying every 10 seconds when the default branch is missing from an Azure Repos repository. Sync now backs off exponentially until the branch configuration is fixed. [#88252]
fixedFixed queries started from workflow blocks and app builder backend functions continuing to run after the caller disconnects or the block times out. Query cancellation applies to Postgres resources only. [#88260]
fixedFixed workflow queries that time out leaving the backend connection open and continuing to stream results. [#88261]
fixedFixed the app builder git server process crashing about 50 minutes after a publish was rejected as a duplicate. [#88262]
fixedFixed the app builder chat jumping each time the agent finishes a tool call while you follow the stream. [#88307]
fixedFixed Retool Database setup failing with a permission denied for database error when the Postgres user is not a superuser, as on managed Postgres services such as RDS, Aurora, Cloud SQL, and Azure. [#88311]
fixedFixed Google Vertex AI queries not resolving secrets and configuration variables in the Project ID field. [#88321]
fixedFixed long query error messages, such as Databricks errors that repeat the full SQL text, dropping the connection and showing a generic error instead of the real message. [#88324]
fixedFixed unreadable text in dialogs, alert dialogs, sheets, and drawers in dark mode for apps in the app builder that use an organization theme. [#88378]
fixedFixed the app builder file search bar being hidden when returning to the Code tab with an active search. [#88392]
fixedFixed Cmd/Ctrl+F in the app builder code editor to focus and select the find query when the find bar is open. [#88395]
fixedFixed a prompt to the app builder AI being lost when the sandbox restarted before saving it. [#88410]
fixedFixed the source control branch switch dialog in classic apps missing branches created in another browser tab. [#88484]
fixedFixed source control sync retrying every 10 seconds when a GitHub App installation ID is missing or the enterprise URL is invalid. [#88528]
fixedFixed app builder chat ending a turn scrolled up and dropping conversation entries when a save finishes late. [#88560]
fixedFixed the app builder function playground History tab showing a previous-version banner for runs that used the current code. [#88572]
fixedFixed encrypted reasoning from OpenAI models being dropped when it arrives late in a streamed response. [#88595]
fixedFixed leftover app builder jobs not draining after switching between pg-boss and Temporal. [#88610]
fixedFixed per-user OAuth resource sign-in failing with a CSRF error in published apps on self-hosted instances with hostname mode turned on. [#88685]
fixedFixed the source control status page retry message to match the one hour maximum retry interval. [#88777]
fixedFixed Download as ZIP exporting the starter template for unpublished apps built in the app builder. The option is now disabled until the app is published, and the download endpoint returns 409. [#88780]
fixedFixed an app builder editor crash when a chat thread contains a malformed implementation plan. [#88800]
fixedFixed creating a workflow from a template on Workflows Home hanging when no folder is selected. [#88885]
fixedFixed frontend load failures during rolling deploys when a pod is missing assets from the previous release. [#88892]
fixedFixed the app builder agent leaving merge conflict markers in an app after a paused git merge. [#88987]
fixedFixed the retool_list_folders and retool_get_folder MCP tools failing on orgs with file, process, or universal folders. [#88995]
fixedFixed the retool_get_workflow and retool_delete_workflow MCP tools to validate workflow IDs as UUIDs and accept upper-case IDs. [#88996]
fixedFixed MCP workflow run tools always returning null for completed_at and created_by. [#89000]
fixedFixed publishing an app builder branch that is behind main to return a clear error immediately instead of failing after the publish starts. [#89062]
fixedFixed MongoDB queries failing with connection errors when workflows ran async and standard queries together. [#89110]
fixedFixed protected Agents failing to open with a misleading permissions error after creating or switching to a source-control branch. [#89281]
fixedFixed the Nonce provided is invalid or already redeemed error when pressing back in an embedded classic app. [#89298]
fixedFixed Source Control deploys leaving app builder apps unprotected when their files already matched the main branch. [#89319]
fixedFixed app builder naming and commit messages failing without a default LLM provider. [#89396]
fixedFixed branch cleanup deleting Azure Repos branches that still exist in the remote repository. [#89400]
fixedFixed the Jobs Runner starting overlapping branch cleanup runs that deleted each other's clones. [#89405]
fixedFixed outbound requests failing when an HTTP proxy is configured. [#89410]
fixedFixed the rotate API key reminder appearing in a workflow's Triggers panel when the webhook trigger is off. [#89425]
fixedFixed the Data Access Enforcement warning listing workflows that have a service user set. [#89429]
fixedFixed app builder MCP tools being unavailable on deployments that use pg-boss without Temporal. [#89647]
fixedFixed app owners who are not admins sharing apps when Allow app owners to manage permissions is off. [#89678]
fixedFixed admin space apps in the app builder being limited to 60 characters instead of 63 for the app identifier. [#89697]
fixedFixed long-running backend functions in the app builder losing their responses behind proxies with idle timeouts. [#89791]
fixedFixed secrets and configuration variables not resolving in AI resource connection fields. [#90001]
fixedFixed sign-in from a published app's hostname redirecting to the apps list on self-hosted. [#90120]
fixedFixed requests with a non-Retool Bearer token returning a 401 error when they also have a valid session cookie. [#90764]
improvedImproved the new app builder's agent so it can diagnose when an app's own CSS overrides the organization's theme instead of reporting that changes cannot be applied. [#81117]
improvedUpdated the publish button label in the new app builder to reflect the current branch's pull request status. [#81758]
improvedImproved the publishing of an organization's library npm tarballs by excluding unnecessary files from package contents. [#81918]
improvedImproved permission check performance by parallelizing independent phases within access-level resolution. [#82030]
improvedImproved the app builder AI agent's guidance to consistently use schema lookup helpers for SQL schema discovery instead of querying system tables directly. [#82053]
improvedImproved wording and visual polish across the Admin Onboarding Hub, including the permissions wizard steps, the day-1 setup complete banner, and the action center styling. [#82063]
improvedImproved the AI usage tab in Usage Analytics with clearer BYOK-focused copy and a tooltip explaining unknown user attribution. [#82087]
improvedReported Content Security Policy violations from the app builder preview as console errors. [#82197]
improvedImproved the Allow access step by pinning the selected table while scrolling. [#82200]
improvedImproved app builder agent guidance for discovering resources that belong to a generic resource type. [#82269]
improvedImproved the visual styling of info badges and menu item typography in the new app builder. [#82516]
improvedImproved the new app builder's backend hook regeneration to only rewrite and broadcast changed hook files instead of the full set. [#82705]
improvedImproved the new app builder's theme editor with an interactive, multi-view app preview. [#82709]
improvedImproved the publish and releases modal in the app builder with several small UX refinements. [#82823]
improvedImproved sandbox warm restore so the server-side branch tip is authoritative instead of relying on a websocket-delivered realignment. [#82888]
improvedImproved debug console dragging and resizing behavior in the new app builder. [#83073]
improvedEnabled react_apps:write Personal Access Token scope for all plans and non-admin users. [#83119]
improvedImproved the agent to process every queued prompt in a single turn instead of one at a time. [#83188]
improvedImproved log badge visibility in the new app builder by adding flash animation and fixing hover panel clipping. [#83229]
improvedImproved how the app editor tracks a working branch's latest commit so it updates immediately from the sandbox instead of waiting on a separate request. [#83268]
improvedImproved the Version History panel's working-branch tab in the new app builder to load commits directly from the sandbox instead of the server, including live diffs for unpublished changes. [#83269]
improvedImproved GitLab API reliability by adding automatic retry logic. [#83312]
improvedImproved reliability of concurrent app publishing during source control deploys. [#83408]
improvedImproved the new app builder's protected publish flow to show pull request status for Bitbucket and Azure DevOps repositories. [#83474]
improvedImproved the new app builder file deletion, making delete controls always available in the editor and for agents. [#83776]
improvedImproved the rename modal for protected apps and resources so leading or trailing whitespace in the name only shows an error on submission, not while typing. [#83992]
improvedImproved the new app builder's Version History diff viewer to load a working-branch commit's files one at a time from the sandbox instead of fetching the whole commit at once. [#84049]
improvedReduced startup latency overhead for JavaScript query execution by polling more frequently for the sandbox memory monitor to attach. [#84111]
improvedImproved the error message shown when a pinned release in a git-based release manifest references a Retool React app that cannot be found or is unprotected. [#84136]
improvedImproved the governance policy editor to make Create the primary action for a new policy. [#84137]
improvedImproved the rename and move app modals with tighter spacing and a note that the change appears after the source control deployment finishes. [#84142]
improvedImproved new branches in the new app builder to default their description to "New branch" instead of appearing blank. [#84162]
improvedImproved the permission-denied message on the new resource page so the toast persists through the redirect to the resources list. [#84210]
improvedImproved the new-file dropdown menu in the Code tab of the new app builder, grouping options into folder, frontend, and backend sections with dividers and color-coded icons. [#84291]
improvedImproved Databricks query result streaming to reduce memory use and time to first row. [#84466]
improvedImproved the permission viewer by collapsing large resource method groups by default. [#84488]
improvedImproved the error message when a workflow's JavaScript module cannot be resolved. [#84619]
improvedMade resource, query, app, and workflow id arrays optional on POST /api/v2/spaces/copyElements. [#84732]
improvedClarified the error shown when a resource migrated from the deprecated Retool AI resource cannot be protected by source control. [#84787]
improvedImproved resource catalog search ranking so exact name and prefix matches rank above keyword matches. [#84910]
improvedImproved error messages shown when a managed OpenAI model is unavailable to an organization. [#84942]
improvedImproved page responsiveness after the first query on published apps with Layout Compiler enabled. [#84959]
improvedImproved generated app names for short prompts like "todo list" instead of skipping name generation. [#84969]
improvedImproved Publish History commit-message attribution for the new app builder's synced Git publishes, correctly attributing external commits to the app they belong to. [#85157]
improvedIntroduced a tooltip explaining Plan mode in the new app builder. [#85169]
improvedImproved JS Executor error messages so every failure includes an actionable explanation. [#85188]
improvedImproved MCP server reliability by raising the token introspection cache TTL from 30 seconds to five minutes. [#85290]
improvedImproved the new app builder's editor performance by moving backend-function analysis to the sandbox instead of parsing app code in the browser, reducing main-thread blocking in apps with many functions. [#85344]
improvedImproved CLI guidance to point users toward retool push -m for descriptive commit messages. [#85376]
improvedMade app publishing resume automatically if interrupted by a backend deploy, instead of failing. [#85430]
improvedImproved the workflow log viewer to load block results in pages so large runs no longer overload the server. [#85540]
improvedImproved skill-load chips in the new app builder to show readable skill names instead of internal identifiers. [#85608]
improvedImproved the Retool MCP server by defining an output schema for every tool, so AI clients can see each tool's result fields. [#85871]
improvedEnabled chunked-columnar streaming for all Microsoft SQL Server queries, removing the previous tier-based restriction. [#85955]
improvedEnabled Anthropic prompt caching for Agents, the Workflows AI Action block, and text and chat App AI queries, reducing cost and latency for repeated calls. [#85995]
improvedPublished apps served via iframe now appear in recently visited apps. [#86050]
improvedFreetool organizations now see every AI model provider in the model picker, with providers beyond Retool models shown and labeled as requiring a Team plan. [#86087]
improvedReduced memory usage for streamed PostgreSQL query results by no longer accumulating every row in memory during streaming. [#86095]
improvedIntroduced a tooltip showing the full branch name on hover in the View all branches modal. [#86126]
improvedImproved Retool MCP app sharing: access lists show subject names and where each access level comes from, granting or revoking access explains when nothing changed, and app create and publish results summarize who can open the app. [#86290]
improvedImproved job queue shutdown and cancellation handling when the new app builder uses pg-boss. [#86452]
improvedImproved the Function Playground in the new app builder to show dropdowns for boolean and enum parameters. [#86495]
improvedImproved S3 storage resilience to DNS outages by caching DNS results for up to one hour. [#86538]
improvedEnabled MCP read and write grants to call the workflows API endpoints, which previously required mcp:admin. [#86569]
improvedImproved the Retool CLI to warn when a checkout is behind main and point to retool pull --from main. [#86688]
improvedImproved app builder preview builds on instances without Temporal by running them as background jobs with build status and automatic crash retries. [#86748]
improvedImproved reliability by retrying user permission queries after transient database connection resets. [#86773]
improvedImproved Google Sheets read and search queries by streaming results by default. [#86992]
improvedImproved backend memory use by canceling in-flight query work when a client disconnects. [#87051]
improvedImproved retool status to detect stale workflow type declarations in the Retool CLI and report them on the Backend types line. [#87342]
improvedImproved the resource picker in the app builder chat by docking it above the message box and adding a Cancel button. [#87403]
improvedReduced memory usage during Source Control syncs of apps, workflows, and queries by processing release files one at a time. [#87407]
improvedImproved load time of the new app builder editor by no longer loading the classic app editor code. [#87409]
improvedImproved the app builder to show an error toast when a manual Code tab edit is refused and not saved. [#87524]
improvedImproved performance of long chat histories in the app builder by rendering only visible messages. [#87567]
improvedImproved app builder editor performance and memory use while the agent streams large file writes. [#87615]
improvedImproved app builder chat responsiveness and reduced memory use while streaming long replies. [#87625]
improvedImproved source control sync memory use by reading React app source files only when each app is synced. [#87681]
improvedImproved source control sync memory use by loading playground queries and themes once per deploy instead of once per app. [#87682]
improvedImproved the Retool AI settings page to show a specific error with a link to the resource when all models are disabled. [#87712]
improvedImproved publish performance for large apps in the app builder. [#87775]
improvedImproved repository load time in the app builder for repos with many branches or tags. [#87776]
improvedImproved the JS Executor service to exit at startup when it cannot start a sandbox, instead of reporting ready while every request fails. [#87818]
improvedImproved Retool CLI push validation speed for large pushes to the app builder. [#87954]
improvedImproved the error message shown when a bulk user invitation exceeds the daily invite limit. [#88022]
improvedImproved Retool CLI error messages to tell you to run retool auth login when a request or push fails with a 401 error. [#88062]
improvedImproved source control sync to back off when Azure Repos rejects credentials, such as an expired personal access token. [#88136]
improvedImproved Plan mode in the app builder so the full plan and your stated requirements carry over when you switch to Build. [#88152]
improvedImproved error messages in the app builder when the git server rejects a push or the publish precheck fails, naming the blocked file and the action to take. [#88172]
improvedImproved the Edit app footer on published apps so it can be minimized, and the choice persists across refreshes. [#88184]
improvedImproved resource search so the Oracle DB resource appears when searching for Oracle AI Database, 26ai, or 23ai. [#88269]
improvedImproved source control sync to validate GitHub App private keys on save and back off retries when a key is invalid. [#88275]
improvedIntroduced a close button on the visual edit prompt in the app builder that closes the prompt and keeps the draft. [#88329]
improvedImproved the visual edit prompt in the app builder to keep a separate draft for each selected element. [#88330]
improvedImproved app builder reliability by downsampling large images sent to the AI model, avoiding request size limit errors. [#88438]
improvedImproved the app builder prompt on the home page with a larger input and updated styling. [#88515]
improvedImproved the app builder selection prompt to open next to the selected element and lock preview scrolling while it is open. [#88679]
improvedReduced each user in retool_list_audit_logs MCP tool results to id and email. [#88994]
improvedClarified that deleting a workflow through the API or MCP is permanent and skips Trash. [#88999]
improvedLifted the maximum date range limit in AI visibility settings. [#89081]
improvedImproved the error shown when the JS Executor cannot reach the workflow backend. It now names WORKFLOW_BACKEND_HOST instead of returning Internal server error. [#89083]
changedRenamed the app builder's app-local theme file from orgTheme.css to theme.css, with automatic migration for existing apps. [#81387]
changedUpdated deprecation timelines for several OpenAI models available in AI Actions and resource queries, and expanded managed-key availability for a newer GPT model in Agents and AI resource queries. [#81464]
changedRenamed remaining shared context references to building context in the new app builder's UI copy. [#81917]
changedIncreased the app serving layer's production shutdown grace period so in-flight requests can drain before the process is force-killed. [#81937]
changedChanged the root app file in the new app builder to be editable by both users and the agent, but it can no longer be deleted, preventing accidental removal of the app's root component. [#81953]
changedRefined the visual style of the thread selector in the app builder. [#81970]
changedUpdated the style of the delete button in the app builder. [#81976]
changedChanged the building context settings description in the new app builder to include a link to the documentation. [#82031]
changedReplaced the legacy chip UI with the redesigned homepage onboarding carousel as the permanent default. [#82061]
changedMoved the shared preview link controls from the editor footer into the Version History panel. [#82097]
changedRenamed AI action references to AI resource query across the workflow builder and related UI copy. [#82141]
changedClarified the AI Credits billing page copy to distinguish Retool-managed keys from BYOK usage, with a link to usage analytics for BYOK. [#82151]
changedMoved the Sync button in the Version History panel and made its icons consistent in size. [#82177]
changedChanged the icon shown for custom and open source AI providers in Retool AI. [#82207]
changedCapped the executeJS response body at 100MB. [#82211]
changedUpdated the Tag commit modal for app builder apps, including tag button behavior and tooltips. [#82221]
changedChanged frontend package version validation so app dependencies managed by Retool, including React 19, must stay on the canonical pinned versions. [#82362]
changedRemoved the Beta label from the Google Drive integration. [#82437]
changedMade the admin settings overview, Day-1 setup wizard, and Action Center generally available for admin and enterprise organizations. [#82588]
changedUpdated the Google Workspace resource icons for Calendar, Docs, Sheets, Slides, Gmail, and Drive to match Google's refreshed brand identity. [#82706]
changedRenamed Version History panel to Change History in the new app builder. [#83218]
changedEnabled a warning when turning on headless workflow-run enforcement about runs with no attributable user. [#83335]
changedChanged how the agent handles chat file attachments so uploaded files always go through the sandbox's /uploads/ folder instead of being sent inline to the model. [#83351]
changedChanged the new app builder's npm registry proxy to support vendor-neutral registries and anonymous authentication. [#83413]
changedChanged on-premises telemetry to report only whether REDIS_HOST, REDIS_PORT, REDIS_PASSWORD, and their Redis User Cache and RPC Redis equivalents are set, without exposing their values. [#83552]
changedDisabled legacy MSSQL connector versions by default for self-hosted. [#83728]
changedChanged NPS survey eligibility to require real build activity, such as page saves, agent threads, or workflow saves, instead of admin or editor permissions alone. [#84054]
changedChanged AI Visibility to a single, centralized page in Settings. [#84176]
changedChanged Retool AI queries to use a fixed list of supported models. [#84224]
changedChanged the MSSQL connector deprecation banner to past tense now that the deprecation date has passed. [#84302]
changedUpdated the publish modal's error message to say backend function instead of serverless function, matching the rest of the IDE. [#84357]
changedEnabled data security policy enforcement by default. [#84625]
changedChanged retool check in the Retool CLI to stop overwriting modified platform-owned files and added retool check --fix to repair them. [#84656]
changedThe Gmail integration now always appears in the create a resource menu. [#84770]
changedRequired edit access to every resource and workflow a serverless function uses before a user can approve it. [#84799]
changedUpdated Assist default model mappings to remove models with upcoming deprecation dates. [#84981]
changedRenamed the new app builder's "Integrate changes" flow to "Merge changes" in button labels and status messages. [#85034]
changedCollapsed the Retool Fast model picker option to a single model, GLM-5.2-Fast. [#85038]
changedDisallowed invalid characters in the app URL input field, auto-converting spaces to dashes and letters to lowercase. [#85048]
changedDefaulted first-time publishes in the new app builder to the Published folder or the folder previously published to. [#85099]
changedEnabled secret redaction from resource query responses and errors by default. [#85357]
changedChanged access policy rows to use a status switch instead of Activate and Deactivate buttons. [#85433]
changedSimplified the SQL resource permission matrix to a flat list instead of a collapsed accordion. [#85439]
changedChanged the Retool CLI's retool apps command to omit trashed apps by default. [#85633]
changedSelf-hosted instances now enforce the same per-user serverless function concurrency cap as Retool Cloud, defaulting to 100 concurrent executions per user. [#85834]
changedEnforced the Team plan's two-environment limit at creation time, closing a race condition that let concurrent requests create extra environments. [#85933]
changedChanged the per-user limit for backend function executions in apps built with the new app builder to 50 concurrent executions. [#85968]
changedMade the one-time publish tooltip for new app builder users a permanent feature instead of an experiment. [#86138]
changedChanged the default Ask AI model to GPT-5 Nano for organizations using a Retool-managed OpenAI provider. [#86286]
changedChanged upgrades to rebuild permissions v2 object roles and grants from existing permissions data on self-hosted instances, replacing roles created by earlier migrations. [#86605]
changedChanged JDBC, Presto, and Vertica pool retries to exponential backoff and lowered the default maximum attempts from 20 to eight, including PRESTO_POOL_MAX_CONNECTION_RETRIES. [#86807]
changedChanged published apps in the new app builder to hide the edit footer when embedded in an iframe. [#86895]
changedChanged MongoDB find, aggregate, and listCollections queries to stream results by default. [#86926]
changedChanged Postgres queries to stream results by default. [#86955]
changedChanged the new app builder to stop generating typed clients for legacy OpenAPI resources that use YAML specs, to prevent app serving out-of-memory errors. [#87045]
changedChanged Retool AI queries to fail with the provider's error message when the AI response reports a failure, instead of returning it as query data. [#87189]
changedChanged the Retool MCP server retool_get_user tool to reject numeric legacy IDs and require the id returned by retool_list_users. [#87237]
changedChanged source control sync to use external Git commit messages in version history for protected apps in the app builder. [#87387]
changedRestricted creating, changing, and deleting workflow triggers, and rotating the webhook API key, to users with edit access to the workflow. [#87452]
changedChanged apps in the new app builder to support embedding in cross-site iframes by default. [#87466]
changedRenamed the Databricks SQL resource to Databricks Lakehouse in the resource picker and form, and pointed Lakebase help to its own guide. [#87469]
changedChanged the MCP OAuth consent screen to show the name of the requesting client instead of Retool MCP. [#87488]
changedRenamed the Updated App Builder AI provider setting to AI App Builder in AI resource forms and AI settings. [#87552]
changedChanged the Retool CLI public beta card on the Home page to show by default. [#87553]
changedChanged S3 read and download queries to always stream responses. Removed the S3 object streaming toggle from Beta settings. [#87594]
changedChanged the role create, update, and delete API endpoints to accept MCP tokens with the mcp:admin grant. [#87689]
changedPublished the latest tag for the js-executor-service and agent-sandbox-service multi-arch images on Docker Hub. [#87764]
changedChanged PATCH /api/v2/role_permissions/roles/:id to return a 400 error when updating an object-scope system role. [#87799]
changedChanged permissions role creation and the role editor to prevent mixing per-object and universal object scopes in one role. [#87805]
changedChanged the app builder agent to see resources across all of your organization's environments and to use the useEnvironment hook when building environment switchers. [#87829]
changedEnabled permissions v2 by default on self-hosted instances after an organization completes its permissions migration. [#87893]
changedChanged Retool Storage to always clean up abandoned and stray uploads. Removed the RETOOL_STORAGE_FILE_SWEEPER_ENABLED and RETOOL_STORAGE_STRAY_FILE_SWEEPER_ENABLED environment variables. [#88174]
changedChanged the maximum wait between failed source control deploy retries to one hour. [#88194]
changedChanged the Agents Configuration Assistant to allow choosing any OpenAI, Anthropic, Azure AI, or AWS Bedrock resource that you can query. [#88212]
changedChanged the AWS Bedrock Claude Sonnet 4 model to deprecated, with Claude Sonnet 4.6 as its replacement, after the model reached end of life on October 14, 2026. [#88314]
changedChanged serverless functions and resource code to run without Node.js globals (process, Buffer, global, setImmediate, and clearImmediate) by default. Code that still depends on them throws a ReferenceError. To turn this off, clear Disable Node globals in sandbox execution in Settings > Beta. [#88372]
changedChanged Smart blocks in workflows to run on the organization's default AI model and removed the model picker. [#88453]
changedChanged app builder background jobs to run in a dedicated pgboss_r2 schema. Jobs left in the previous pgboss2 schema are not migrated. [#88533]
changedChanged the data access enforcement beta setting title and description to match Data Access Enforcement naming. [#88765]
changedChanged app builder publishing to check function approvals and validate backend code in the publish sandbox for editor and MCP publishes. [#88801]
changedChanged the app builder to save its pg-boss or Temporal backend choice on first boot. [#88979]
changedDropped Beta badges from the app builder. [#89050]
changedChanged bare retool init in the Retool CLI to create a new directory when the current one has files. [#89119]
changedEnabled skipping release artifacts that already exist during full source control deploys by default. [#89131]
changedChanged Microsoft SQL Server resources to ignore connection string parameters not on an allowlist. [#89561]
changedChanged the rotate API key reminder for workflow run identity to recommend rotating the webhook API key, and added a Copy key action after rotating. [#89686]
changedReplaced the on-prem iframe-hosted mode setting with Enable app hostnames for published apps. [#90070]
changedChanged service users for workflows to be on by default. [#90500]
changedChanged Retool-managed AI keys on self-hosted instances to authorize with the license key by default, so OPENAI_PROXY_API_TOKEN is optional. [#90651]
changedChanged self-hosted instances to allow serverless functions to run up to 300 seconds by default. Admins can lower the maximum in Settings > Beta. [#90786]
changedChanged app testing to be available as an opt-in Beta setting on self-hosted instances. [#90843]
removedRemoved an unpopulated subdomain field from the BYOK usage API response, since it is not populated for self-hosted instances. [#81942]
removedRemoved the promotional banner, video, and button from the form submission success screen. [#82447]
removedRemoved the Custom API Endpoint field for BigQuery resource connections, previously used to route traffic through a Private Service Connect endpoint. [#83456]
removedRemoved the ability to create or duplicate Vertica resources. [#84234]
removedRemoved the Submit a prompt item from the Help menu. [#84283]
removedRemoved the classic command palette (Cmd/Ctrl+K) from the new app builder. [#85647]
removedRemoved Microsoft SQL Server connector versions 1 and 2. All SQL Server resources now use version 3. [#88278]
deprecatedDeprecated BigID resources: organizations can no longer create or duplicate a BigID resource, though existing ones can still be edited or deleted. [#84048]
security fixFixed a Temporal workflow isolation bug that could leak module-level state across workflow executions on a reused V8 context, and upgraded the Temporal TypeScript SDK to 1.14.2. [#80896]
security fixPatched the ws package to version 8.21.2 in the code executor workflows environment. Resolves CVE-2026-48779. [#81022]
security fixPatched the websocket-driver dependency. Resolves CVE-2026-54466 and CVE-2026-54490. [#81175]
security fixPatched the dd-trace dependency. Resolves CVE-2026-50272. [#81176]
security fixBumped the PostgreSQL JDBC driver to 42.7.12. Resolves CVE-2026-54291. [#81503]
security fixBumped the sharp image library to 0.35.3. Resolves GHSA-f88m-g3jw-g9cj. [#81606]
security fixBumped the svgo dependency to patch a cross-site scripting vulnerability in its script-removal plugin. Resolves GHSA-2p49-hgcm-8545. [#81609]
security fixBumped the dompurify dependency to 3.4.12. Resolves GHSA-c2j3-45gr-mqc4. [#81610]
security fixBumped the Java DB connector's jackson dependency to 2.21.5. Resolves CVE-2026-59889 and CVE-2026-54515. [#81612]
security fixFixed a permission gap that let any authenticated organization member list and download other users' Retool Storage files. [#81729]
security fixFixed a data access enforcement vulnerability that could allow unauthorized access to restricted rows under certain SQL query conditions. [#82080]
security fixFixed config variable default values being stored in plaintext instead of encrypted at rest. [#82109]
security fixFixed a missing permission check that allowed bulk inserts into non-RetoolDB tables without the required table write permission. [#82153]
security fixFixed a data access enforcement vulnerability that could allow row-level security filters to be bypassed under certain query conditions. [#82178]
security fixApplied audit logging to resource connection tests to detect destination overrides. [#82192]
security fixFixed a security vulnerability that allowed AI agent thread snapshots in the new app builder to be created or restored across users and organizations. [#82317]
security fixFixed a data access enforcement vulnerability that could incorrectly authorize access to restricted tables under certain conditions. [#82373]
security fixFixed a data access enforcement vulnerability that could allow unauthorized access to column data under certain query conditions. [#82376]
security fixFixed a security vulnerability that allowed a user with write access to an app to start an agent sandbox on another user's thread, exposing that user's working tree, uploads, and agent state. [#82481]
security fixPatched the tar dependency. Resolves GHSA-r292-9mhp-454m. [#82482]
security fixPatched the undici dependency to address multiple vulnerabilities. Resolves CVE-2026-13697, CVE-2026-14643, CVE-2026-15157, CVE-2026-16728, and CVE-2026-16729. [#82483]
security fixPatched the body-parser dependency, which could silently disable body-size-limit enforcement. Resolves CVE-2026-12590. [#82484]
security fixPatched a denial-of-service vulnerability in the linkify-it dependency. Resolves CVE-2026-59887. [#82485]
security fixPatched the ip-address dependency, which allowed IP address parsing bypasses. Resolves CVE-2026-69192, CVE-2026-54272, and CVE-2026-69198. [#82486]
security fixPatched the adm-zip dependency, which could cause out-of-memory errors from a crafted archive. Resolves CVE-2026-39244. [#82495]
security fixPatched the postcss dependency to address multiple vulnerabilities, including an arbitrary file read issue. Resolves CVE-2026-45623, CVE-2026-69153, and GHSA-r28c-9q8g-f849. [#82498]
security fixPatched 16 security vulnerabilities in the Spring Framework dependency used by the JDBC connector by upgrading to version 6.2.19. [#82499]
security fixPatched an authentication bypass vulnerability in the spring-ldap-core dependency used by the JDBC connector. Resolves CVE-2026-41720. [#82500]
security fixPatched denial-of-service vulnerabilities in the brace-expansion dependency. Resolves CVE-2026-14257 and CVE-2026-69152. [#82502]
security fixPatched host-confusion vulnerabilities in the fast-uri dependency. Resolves CVE-2026-13676, CVE-2026-16221, and CVE-2026-18446. [#82504]
security fixRedacted secrets from Postgres connector error logs so values echoed back in error messages are no longer written to logs. [#82798]
security fixUpdated the micrometer dependency in the Java database connector. Resolves CVE-2026-40983 and CVE-2026-40984. [#82799]
security fixPatched the js-yaml dependency. Resolves GHSA-5p4m-2wfm-xmqj. [#82801]
security fixFixed a race condition that let a single passwordless login token be redeemed more than once concurrently. [#82822]
security fixFixed a data access enforcement vulnerability that could allow restricted rows to be read under certain query conditions. [#82856]
security fixPatched a third-party ID-generation dependency to address three vulnerabilities. Resolves CVE-2026-67213, CVE-2026-67214, and CVE-2026-73086. [#82896]
security fixFixed a security vulnerability in the DOMPurify sanitization library. Resolves GHSA-55q2-fjhq-7xh7. [#82897]
security fixPatched a third-party web framework dependency to address four vulnerabilities. Resolves CVE-2026-69207, CVE-2026-71848, CVE-2026-71849, and CVE-2026-71850. [#82898]
security fixDisabled COPY LOCAL for Vertica JDBC connections to prevent local file access. [#82987]
security fixFixed data access controls being bypassed on cached query results for resources with row-level security enabled. [#83126]
security fixPatched piscina. Fixes CVE-2026-55388. [#83183]
security fixPatched @remix-run/router. Fixes CVE-2026-22029 and CVE-2026-40181. [#83184]
security fixFixed a security vulnerability in the Java database connector (CVE-2025-3588). [#83196]
security fixFixed a security vulnerability in a third-party networking dependency used for proxy connections (CVE-2026-69192, CVE-2026-42338). [#83198]
security fixPatched cache-manager-redis-store and redis. Fixes CVE-2021-29469. [#83199]
security fixFixed a security vulnerability in outbound request filtering used by the image proxy (CVE-2025-57814). [#83203]
security fixPatched Apache HttpComponents libraries used by the Java database connector to address multiple vulnerabilities (CVE-2026-54399, CVE-2026-54428, CVE-2026-64607). [#83220]
security fixPatched BouncyCastle used by the Java database connector to address three critical vulnerabilities. [#83450]
security fixPatched a Java database connector dependency to address CVE-2026-49844. [#83454]
security fixPatched the code execution sandbox environment to address six security vulnerabilities (CVE-2026-69244, CVE-2026-69243, CVE-2026-59881, CVE-2026-59885, CVE-2026-59884, CVE-2026-59886). [#83457]
security fixFixed a security vulnerability related to workflow run identity handling. [#83524]
security fixFixed a vulnerability that could let a crafted query bypass data access policy enforcement on certain resources. [#83535]
security fixUpdated netty in the JDBC connector. Resolves CVE-2026-59902 and CVE-2026-59903. [#83539]
security fixFixed a security vulnerability in the Databricks JDBC connector. [#83568]
security fixFixed a Postgres integration issue that could leak information through SQL error details when data access enforcement restricted a query. [#83842]
security fixFixed an authorization issue that could allow a user without the required workflow permissions to view workflow run logs or export a workflow. [#83885]
security fixFixed source control credentials being exposed in error logs during git clone and fetch operations. [#83916]
security fixUpdated Spring Boot in the JDBC connector. Resolves CVE-2026-41001. [#84011]
security fixFixed a bug where a failed data-security policy rewrite could return internal error details to the client instead of a generic message. [#84032]
security fixFixed unauthorized access to app source code through git server endpoints for users with only read access. [#84089]
security fixFixed a vulnerability where the Presto and Vertica connectors could be used to reach unintended JDBC drivers on the shared classpath. [#84232]
security fixFixed a security vulnerability related to draft folder permissions. [#84246]
security fixFixed an authorization check that could let an unauthorized request begin app or agent thread provisioning in the new app builder before being rejected. [#84252]
security fixRemoved the unused tap dependency, eliminating a vulnerable pacote copy. Resolves CVE-2026-9496. [#84334]
security fixPatched an issue where raw custom SSO settings, including secrets, could leak through the unprivileged organization profile projection. [#84624]
security fixFixed embedded external users receiving the full org directory and pending invite tokens. [#84693]
security fixScrubbed resource config secrets, including resource authentication passwords, from query responses and errors. [#84717]
security fixVerified the XSRF token value against the session instead of only comparing header and cookie. [#84759]
security fixPatched tomcat-embed. Resolves CVE-2026-68525, CVE-2026-65905, and CVE-2026-65182. [#84881]
security fixPatched browserslist. Resolves CVE-2026-73089 and CVE-2026-73088. [#84882]
security fixUpdated mysql2. Resolves GHSA-3f6p-5ww8-9rcr and GHSA-rgwj-5xj2-c3m3. [#84883]
security fixPatched @xmldom/xmldom. Resolves CVE-2026-83610, CVE-2026-83607, CVE-2026-83605, CVE-2026-83616, CVE-2026-83608, CVE-2026-83611, CVE-2026-83613, CVE-2026-83619, CVE-2026-83615, and CVE-2026-83614. [#84884]
security fixPatched qs. Resolves CVE-2026-82417 and CVE-2026-82562. [#84885]
security fixPatched fast-uri. Resolves CVE-2026-75931, CVE-2026-75975, CVE-2026-75899, and CVE-2026-76172. [#84907]
security fixPatched fflate. Resolves CVE-2026-45820. [#84909]
security fixUpdated hono. Resolves CVE-2026-84363, CVE-2026-84364, and CVE-2026-84365. [#85057]
security fixUpdated morgan. Resolves CVE-2026-15603 and CVE-2026-87859. [#85058]
security fixUpdated colord. Resolves CVE-2026-85062. [#85059]
security fixUpdated js-yaml. Resolves CVE-2026-84375. [#85060]
security fixUpdated svgo. Resolves CVE-2026-84370 and CVE-2026-84369. [#85061]
security fixFixed custom authentication debug logs and error messages exposing secret config variable values. [#85108]
security fixUpdated sharp. Resolves GHSA-rgj7-g3m4-5g8c. [#85327]
security fixUpdated joi. Resolves CVE-2026-84367 and CVE-2026-84368. [#85329]
security fixFixed the unified Objects list exposing other users' personal draft and trash folders to anyone with broad object access. [#85552]
security fixPatched soupsieve in the code executor sandbox environment against a polynomial-time denial of service. Resolves CVE-2026-86000 and CVE-2026-85999. [#85866]
security fixFixed data security policy saves being authorized against the caller-supplied resource name instead of the policy's actual stored resource, which could let a user with access to one resource take over and reattach any data access enforcement policy in the organization. [#86037]
security fixRemoved unused table editor API endpoints that bypassed data access enforcement policies, closing a gap that let a user with page-editor access read or write tables a policy explicitly denied them. [#86056]
security fixFixed Retool CLI OAuth tokens being usable by organizations without CLI access enabled, letting them sign in and run some commands despite lacking the entitlement. [#86123]
security fixFixed Google Cloud Storage and BigQuery resources accepting non-service-account credential types, which could let a user with resource test access read arbitrary files from the dbconnector. [#86143]
security fixFixed an endpoint returning unmasked resource secrets in the permissions response. [#86187]
security fixFixed Athena resource credentials being shared with other AWS resources in the same worker. [#86202]
security fixFixed Firebase resources allowing a crafted service account key to make the dbconnector read a local file on the host. [#86203]
security fixFixed custom AI providers using the OpenAI schema without a configured key inheriting Retool-managed credentials. [#86315]
security fixFixed reading certain resources with managed credential overrides, such as OAuth or Google credentials, leaving environment-provided credentials in the object later used for a save. [#86317]
security fixEnforced current_user spoofing checks on cached query results to stop cross-user cache hits. [#86349]
security fixFixed a row-level security bypass caused by template expressions split across query clauses. [#86398]
security fixLimited non-admin embed tokens to adding external users to groups the token owner is in. [#86439]
security fixPatched joi against a regular expression denial of service and a message prototype replacement flaw. Resolves GHSA-6h2x-m376-mqjq and CVE-2026-90771. [#86497]
security fixPatched fast-uri against URI port injection, host parsing, and host normalization flaws. Resolves CVE-2026-84292, CVE-2026-84394, and CVE-2026-86472. [#86499]
security fixPatched ip-address against IPv6 classification and parsing flaws. Resolves CVE-2026-101910, CVE-2026-101911, CVE-2026-101912, and CVE-2026-101913. [#86501]
security fixPatched markdown-it against quadratic-time parsing that could stall processing. Resolves GHSA-253c-mchw-3w2r. [#86504]
security fixUpdated undici to 6.28.1 and 7.29.1 and rebuilt the bundled fetch used in the workflows JavaScript sandbox. Resolves CVE-2026-18149, CVE-2026-18540, CVE-2026-19534, CVE-2026-84890, CVE-2026-84933, CVE-2026-84947, CVE-2026-84961, CVE-2026-85008, CVE-2026-85014, and CVE-2026-85024. [#86506]
security fixPatched jackson-core and jackson-databind in the Java database integration. Resolves CVE-2026-19032, CVE-2026-68497, CVE-2026-83557, CVE-2026-89407, CVE-2026-89425, CVE-2026-91776, and CVE-2026-91777. [#86511]
security fixFixed workflow library names and versions allowing requirements.txt injection in the Code Executor. [#86519]
security fixFixed the Code Executor reading sandbox configurations that package build code could modify. [#86542]
security fixPrevented query caching from sharing forwarded cookies or session cookie data between users. [#86662]
security fixHardened origin validation on classic app multiplayer and /api/wsTest WebSocket connections to reject lookalike domains and published app hosts. [#86674]
security fixValidated the subdomain cookie before /auth/login and /iframeembed redirect to it, preventing redirects to arbitrary hosts on self-hosted instances. [#86675]
security fixFixed a path injection vulnerability in Code Executor that could allow a crafted job ID to escape the job directory or inject nsjail configuration. [#86756]
security fixPatched piscina against unsafe option inheritance that could enable remote code execution. Resolves CVE-2026-102992. [#86817]
security fixPatched @grpc/grpc-js against TLS peer certificate and error message exposure flaws. Resolves CVE-2026-101915 and CVE-2026-101916. [#86818]
security fixPatched hono against an XSS vulnerability in server-rendered JSX. Resolves CVE-2026-93981. [#86819]
security fixPatched dompurify against two sanitization flaws. Resolves GHSA-p98j-92pf-mc4p and GHSA-6688-9rhm-gjv2. [#86820]
security fixPatched brace-expansion against stack exhaustion and quadratic-time brace expansion. Resolves CVE-2026-102276, CVE-2026-102278, and CVE-2026-102277. [#86822]
security fixUpdated axios to 1.20.0, including the default workflows library, patching prototype pollution, proxy and redirect bypass, denial-of-service, and header injection flaws. Resolves GHSA-x97p-jq2g-jp4f, GHSA-m8m8-qj5v-23w3, GHSA-vh66-26gq-q6x8, GHSA-9fr6-4gfg-395g, GHSA-r4gj-5m52-g5wh, GHSA-3pq3-5fj3-cg6v, GHSA-44g4-m2mj-wpvx, GHSA-c29m-xwm3-cm6r, GHSA-mghh-pgcx-3jjj, GHSA-542g-h47m-68v8, GHSA-4hqw-qxg8-jxx2, and GHSA-j8rh-479h-cp32. [#86823]
security fixPatched moment to 2.31.0 against loading files outside the locale directory through moment.locale(). Resolves CVE-2026-17495. [#86824]
security fixPatched basic-ftp against a denial of service in directory listing parsing. Resolves CVE-2026-102990. [#86825]
security fixPatched probe-image-size against a denial of service in SVG parsing. Resolves CVE-2026-104861. [#87027]
security fixPatched geopy in the Python sandbox against a regular expression denial of service. Resolves CVE-2026-77387. [#87032]
security fixUpdated the esbuild version pinned in new app builder projects to 0.28.1. Resolves GHSA-g7r4-m6w7-qqqr. [#87073]
security fixRevoked existing sessions when an email and password account is first linked to Google sign-in. [#87080]
security fixFixed MCP resource TypeScript execution reading files from the Retool server. [#87255]
security fixHardened the new app builder editor against writes to protected files through non-canonical paths. [#87304]
security fixHardened Code Executor so job values can no longer alter its sandbox configuration. [#87316]
security fixPatched @fastify/busboy against multipart header parsing flaws. Resolves GHSA-gxm5-99cw-xjw9 and CVE-2026-19481. [#87337]
security fixRemoved unused GraphQL language service packages, eliminating vulnerable @graphql-tools dependencies. Resolves GHSA-6fw5-9hq8-w87g and GHSA-7mx3-vvmw-hjmv. [#87338]
security fixPatched the OpenTelemetry database instrumentation packages used by Sentry so they no longer record database usernames in trace spans. Resolves GHSA-qqmp-wf37-98f9. [#87339]
security fixPatched fsspec in the Python sandbox against remote code execution. Resolves GHSA-27vj-qcqg-25rc. [#87340]
security fixPatched @opentelemetry/instrumentation-pg so tracing spans no longer include the database username. Resolves GHSA-qqmp-wf37-98f9. [#87343]
security fixUpdated react-router in the app builder sandbox to 7.18.4, patching multiple vulnerabilities. Resolves CVE-2026-33244, CVE-2026-33245, CVE-2026-34077, CVE-2026-40181, CVE-2026-42211, CVE-2026-42342, CVE-2026-53663, CVE-2026-53666, CVE-2026-53667, CVE-2026-53669, and CVE-2026-55685. Also resolves GHSA-2j2x-hqr9-3h42, GHSA-f22v-gfqf-p8f3, and GHSA-qwww-vcr4-c8h2. [#87539]
security fixUpdated music-metadata to 11.16.1 and its file-type dependency to 21.3.4 to patch denial-of-service flaws in audio file parsing. Resolves CVE-2026-32256, CVE-2026-107387, CVE-2026-107388, CVE-2026-107389, CVE-2026-107391, CVE-2026-107392, and CVE-2026-31808. [#87694]
security fixRequired resource edit access to run client-supplied Query Library queries in the query playground. [#87759]
security fixFixed a cross-site scripting vulnerability in the app runtime by checking the origin of the runtime.html message handoff. When SANDBOX_DOMAIN is set, runtime pages now return 404 on other hostnames. Set DISABLE_SANDBOX_HOSTNAME_CHECK to opt out. [#87801]
security fixUpdated http-proxy-middleware to 2.0.10 to patch host and path router matching. Resolves CVE-2026-55602. [#87947]
security fixReplaced the ip package with ipaddr.js and expanded loopback detection to block app requests to Retool's own host through IPv6, IPv4-mapped, and unspecified addresses. Resolves CVE-2024-29415. [#87950]
security fixUpdated markdown-it and linkify-it to patch denial-of-service vulnerabilities. Resolves CVE-2026-2327, CVE-2026-48988, CVE-2026-48801, CVE-2026-59887, GHSA-253c-mchw-3w2r, GHSA-38c4-r59v-3vqw, GHSA-6v5v-wf23-fmfq, GHSA-22p9-wv53-3rq4, and GHSA-v245-v573-v5vm. [#87956]
security fixUpdated react-router to 7.18.4 in the frontend, patching 12 advisories. Resolves CVE-2026-33244, CVE-2026-33245, CVE-2026-34077, CVE-2026-40181, CVE-2026-42211, CVE-2026-42342, CVE-2026-53663, CVE-2026-53666, CVE-2026-53667, CVE-2026-53669, CVE-2026-55685, and GHSA-qwww-vcr4-c8h2. [#87957]
security fixUpgraded OpenTelemetry to the 2.x SDK, patching @opentelemetry/propagator-jaeger. Resolves CVE-2026-59892. [#87959]
security fixDisabled eval in the mobile web PDF viewer to prevent code execution from crafted PDFs. Resolves CVE-2024-4367. [#87971]
security fixUpdated fast-folder-size in the Code Executor to remove the vulnerable decompress dependency. Resolves CVE-2026-10732, CVE-2026-39243, CVE-2026-101894, and CVE-2026-53486. [#87990]
security fixReplaced the abandoned hoek package with @hapi/hoek 9 to patch a prototype pollution vulnerability. Resolves CVE-2020-36604. [#87992]
security fixPatched @tootallnate/once by forcing version 2.0.1 across the backend and Code Executor environments. Resolves CVE-2026-3449. [#87993]
security fixUpdated the mobile app bundler to remove image-size 1.2.1 and patch a denial-of-service vulnerability. Resolves CVE-2025-71329, CVE-2025-71330, and GHSA-5p2g-fcmc-qvqq. [#87996]
security fixFixed the app builder publish flow accepting release tags and commit values that could write files outside the git server repository. [#88071]
security fixPatched the Datadog Java tracing agent (dd-java-agent) in the database connector and standard images. Resolves CVE-2026-50270. [#88084]
security fixUpdated the bundled lodash library in the app JavaScript sandbox to 4.18.1. Resolves CVE-2026-4800. [#88095]
security fixUpdated proxy-addr to 2.0.8 to patch IP spoofing through IPv4-mapped IPv6 addresses in trusted proxy matching. Resolves CVE-2026-90711. [#88105]
security fixPatched source-map-js against event-loop denial of service through indexed source-map section offsets. Resolves CVE-2026-93749. [#88106]
security fixPatched nanoid to prevent an infinite loop when generating zero-length IDs. Resolves CVE-2026-67213. [#88109]
security fixPatched handlebars to address JavaScript injection vulnerabilities. Resolves CVE-2026-106444, CVE-2026-106445, and CVE-2026-106446. [#88111]
security fixPatched compression to fix a memory leak when clients disconnect early. Self-hosted instances now serve brotli to clients that accept it. Resolves CVE-2026-87776. [#88113]
security fixPatched @hono/node-server to prevent path traversal in static file serving on Windows. Resolves GHSA-frvp-7c67-39w9. [#88114]
security fixPatched @modelcontextprotocol/sdk (credential leakage to untrusted authorization servers, session and denial-of-service issues). Resolves CVE-2026-104850, CVE-2026-111767, CVE-2026-111768, CVE-2026-111769, CVE-2026-111771, and GHSA-f897-62hf-6gxq. [#88117]
security fixPatched body-parser to enforce size limits when an invalid limit option is set. Resolves CVE-2026-12590. [#88119]
security fixPatched libthrift in the Java database connector to stop infinite loops and unbounded recursion on malformed input. Resolves CVE-2026-43871. [#88121]
security fixPatched aiohttp in the code executor Python sandbox. Resolves CVE-2026-111063, CVE-2026-111064, CVE-2026-111065, CVE-2026-111066, CVE-2026-111748, CVE-2026-111749, CVE-2026-111750, and GHSA-2g87-pp6c-29x5. [#88349]
security fixPatched follow-redirects to stop credential headers leaking to another origin on redirects. Resolves CVE-2026-111755 and CVE-2026-111756. [#88350]
security fixPatched markdown-it to fix denial-of-service issues. Resolves CVE-2026-111759, CVE-2026-111758, and CVE-2026-111766. [#88351]
security fixPatched hono to fix a request path decoding issue in serveStatic. Resolves CVE-2026-111757. [#88352]
security fixBlocked npm registry API requests (/-/ paths) from sandboxes through the agent executor proxy. [#88408]
security fixRestricted removing users from the admin group to the browser so MCP tokens can no longer remove admin group members. [#88409]
security fixStopped logging Azure Repos credentials when pushing to a repository with basic authentication. [#88415]
security fixRevoked MCP and CLI refresh tokens when a user's password changes, their sessions are reset, or the user is disabled. [#88430]
security fixConfigured Node.js and Java connections to use operating system trust stores so revoked eMudhra certificate authorities are rejected. [#88465]
security fixRequired Edit access on a resource for MCP resource queries. Users with only Use access now receive a 403 error. [#88493]
security fixUpgraded Node.js from 22.22.2 to 22.23.4 to patch a Brotli decoder out-of-bounds vulnerability. Resolves CVE-2026-111497. [#88524]
security fixRemoved revoked eMudhra and Sectigo root certificates from the Java runtimes bundled in Debian-based images. [#88534]
security fixApplied the operating system CA bundle to Python requests in the code executor so revoked certificate authorities, including eMudhra, are no longer trusted. [#88581]
security fixUpdated dompurify to 3.4.17. Resolves GHSA-cg2g-xh64-v4q7, GHSA-mrv2-3pqr-j5jr, and GHSA-c6gr-qvv4-5v3f. [#88623]
security fixUpdated the telemetry sidecar base image to Alpine 3.24 to remove the compromised eMudhra emSign intermediate CAs. Resolves CVE-2026-91403 and CVE-2026-111943. [#88682]
security fixPatched ip-address to fix quadratic-time IPv6 zone parsing that could block the event loop. Resolves CVE-2026-111997. [#88691]
security fixPatched immutable to prevent denial of service from oversized lists and hash collisions. Resolves CVE-2026-59879 and CVE-2026-59880. [#88692]
security fixReplaced xlsx with @e965/xlsx in the alasql dependency. Resolves CVE-2023-30533, CVE-2024-22363, CVE-2021-32012, CVE-2021-32013, and CVE-2021-32014. [#88693]
security fixPatched csv-parse to fix prototype replacement when the columns option is enabled. Resolves CVE-2026-85063. [#88694]
security fixPatched nodemailer (address parser denial-of-service, file and URL access option bypasses, recipient-domain validation bypasses). Resolves CVE-2026-82659, CVE-2026-110871, GHSA-2x7j-588g-ccc2, GHSA-8m3c-c648-2xjj, GHSA-cc9r-2j5m-2m83, GHSA-wmmp-3585-3rmp, GHSA-6vj9-mwq6-2f5v, GHSA-8vvx-rff5-p5rq, GHSA-v53p-9fqp-m79j, GHSA-8c8m-p3m8-cjg8, GHSA-m943-m63m-w62w, GHSA-85x2-q946-cp5h, GHSA-4ffr-jq9g-5ffx, GHSA-g73g-hqqh-jr95, GHSA-4g23-2xm8-66gc, and GHSA-vvjj-xcjg-gr5g. [#88695]
security fixPatched json5 against prototype pollution through a __proto__ key in parsed input. Resolves CVE-2022-46175. [#88724]
security fixUpdated Vite in the app builder sandbox to 8.2.4 to patch multiple vulnerabilities. Resolves CVE-2026-112942, CVE-2026-112943, CVE-2026-112944, CVE-2026-112945, CVE-2026-112946, and CVE-2026-112947. [#88774]
security fixPatched fast-xml-builder against attribute value quote bypass and comment value regex bypass. Resolves CVE-2026-44665 and CVE-2026-44664. [#88813]
security fixPatched ajv to fix a regular expression denial of service with the $data option. Resolves CVE-2025-69873. [#88814]
security fixPatched yaml in the workflows code executor environment. Resolves CVE-2026-33532. [#88817]
security fixPatched nodemailer to fix address parsing that could add or change email recipients. Resolves GHSA-8c8m-p3m8-cjg8, GHSA-m943-m63m-w62w, and GHSA-85x2-q946-cp5h. [#88831]
security fixPatched undici to fix denial-of-service and Subresource Integrity bypass issues. Resolves CVE-2026-109869, CVE-2026-109924, and CVE-2026-109841. [#88832]
security fixPatched body-parser to fix a denial of service from trailing bytes after a JSON body. Resolves CVE-2026-111181. [#88833]
security fixPatched fast-uri. Resolves CVE-2026-110095, CVE-2026-110180, CVE-2026-110306, and CVE-2026-110725. [#88834]
security fixPatched setuptools in the code executor Python sandbox against a path traversal in legacy namespace-package installs. Resolves GHSA-xmj3-9gf7-h52w. [#88836]
security fixPatched sharp in the app builder sandbox runtime. Resolves CVE-2026-96889 and GHSA-wq5f-xc86-pv6w. [#88914]
security fixDisabled git hooks and fsmonitor for all git commands the backend runs, preventing code execution from repository hooks during source control sync. [#88915]
security fixHardened Azure Repos source control clones by refusing repositories that contain .git entries or symlinks. [#89054]
security fixStopped logging password hashes in the compromised-password check and fixed DO_HIBP_CHECK=false flagging every login as weak. [#89141]
security fixPatched MCP resource execution so it stays bound to the environment authorized when the execution starts. [#89724]
security fixPatched MCP resource queries so they always run as the authenticated user. [#89726]
security fixPatched the OAuth authorize endpoint to require an authorization token issued after two-factor authentication, so a password alone can no longer create a session. [#90540]
security fixPatched Copy to Space to require the destination to be in the caller's own Spaces cluster. [#90570]
968 changes