Release 2026.34.0
Release period: 2026-08-12 to 2026-08-19
This release includes the following issues:
- Cloud Foundry Replication No Longer Fails on Concurrent Organization Deletion
- Upgrade Dialog Now Tells You Why It Cannot Load the Upgrade Info
- Deleted Building Blocks No Longer Show up as Succeeded
- Building Block Count in the Tab Excludes Deleted Blocks
- Filter Building Blocks by Action and Health Status via the API
- Building Block Definition Input and Output Edits No Longer Lost After Saving
- Fix Outdated Browser Tab Title in Platform Builder
- Fix Wrong Deletion Date Shown for Deleted Tenants
- Building Block API v1 Reliably Returns Tenant-Level Building Blocks
- Tenant Usage Report API Moved to the meshObject API
- Fix Building Block Runs Stuck In Progress After Draft Input Changes
- Manage Restricted Landing Zones via the meshObject API
- Fixed Landing Zone Restrictions Being Lost on API Updates
- General Availability for the meshEventLog v1 API
- General Availability for the meshTenant v4 API
- Fixed Sensitive Hub Building Block Inputs Not Being Encrypted
- Fix Blank Result Dialog After Bulk Upgrading Building Blocks
- Removal of the Deprecated OpenStack Metadata API
- Migrate an Existing Identity Provider When Creating an Entra ID Integration
- Dry Runs on Building Blocks Marked for Deletion Are Now Rejected
Ticket Details
Cloud Foundry Replication No Longer Fails on Concurrent Organization Deletion
Audience: User
Description
We fixed a bug that could make the replication of a tenant to a Cloud Foundry platform fail with an error stating that organizations do not exist or are not accessible. This happened when an unrelated organization on the same foundation was being deleted at the same time. Replication now assigns the quota without referring to those other organizations, so a deletion elsewhere on the foundation no longer affects your tenant.
Upgrade Dialog Now Tells You Why It Cannot Load the Upgrade Info
Audience: User
Description
When you open the upgrade dialog of a building block, the dialog now shows the reason we could not load the upgrade info. The most common reason is that a run is still in progress, because a building block can only be upgraded while it is in a final state (SUCCEEDED, FAILED or ABORTED). Before, you only saw a generic "Failed to load upgrade info." message, and the Confirm button still looked clickable. The dialog now hides the Confirm button in that case, so it is clear that you can only close the dialog and try again later.
Deleted Building Blocks No Longer Show up as Succeeded
Audience: User
Description
Some building blocks that you deleted a while ago still appeared in the building block list as succeeded, and they counted towards the number next to the Building Blocks tab. We corrected the status of these older building blocks, so the list now shows the deleted ones only when you ask for them.
How to use
Open the Building Blocks tab of your workspace or of the Platform Builder area. The list starts on the building blocks that are still there. To look at the deleted ones, select the Deleted status in the filter.
Building Block Count in the Tab Excludes Deleted Blocks
Audience: User
Description
The count next to the Building Blocks tab now only counts the building blocks that are still there. Deleted ones no longer inflate it, so the number always matches the list you see when you open the tab.
Filter Building Blocks by Action and Health Status via the API
Audience: User
Description
The meshBuildingBlock API now reports the action a Building Block needs from you next, the same value the Action column shows in meshPanel, plus the health status, which reports the outcome of the last run that spoke for the Building Block, and you can filter the list by either of them. Until now you could only read the status, which does not tell you whether a Building Block is merely waiting on a dependency, needs an input, needs a run approved, has drifted, or can be upgraded to a newer version of its Building Block Definition.
How to use
The action and the health status are part of the status section of every Building Block in the preview version of the
meshBuildingBlock API, and the list endpoint accepts an action and a healthStatus filter, each of which you can
repeat to match several values at once. Use them to build your own reports, for example to find every Building Block
that is offering an upgrade, waiting for an approval, or left failing across your Workspaces. Prefer both fields
over the status field, which is now deprecated because it mixes up the outcome of the last run with what the
Building Block needs from you next. See the API documentation for the full list of values.
Building Block Definition Input and Output Edits No Longer Lost After Saving
Audience: User
Description
When you save the inputs or outputs of a building block definition, the page reloads its data in the background. Edits you made while that reload was still running were silently discarded. The forms now keep your edits, so you can continue changing inputs and outputs right after saving without losing work.
Fix Outdated Browser Tab Title in Platform Builder
Audience: User
Description
The browser tab title for the Platform Builder area still showed the old name, "Workspace Service Management". We updated it to "Platform Builder" so it matches the name used everywhere else in the product.
Fix Wrong Deletion Date Shown for Deleted Tenants
Audience: User
Description
We fixed an issue where the tenant overview could show a wildly incorrect date next to a deleted tenant, such as tens of thousands of days ago. This happened for tenants whose replication history was never recorded, where the system filled the gap with a hardcoded stand-in date instead of leaving it out. The tenant overview now shows the actual date the tenant was deleted.
Building Block API v1 Reliably Returns Tenant-Level Building Blocks
Audience: User
Description
We fixed a bug in the first version of the Building Block meshObject API. When a workspace-level Building Block existed in the queried scope, listing Building Blocks failed with an error instead of returning a result, because this API version has no representation for a workspace-level Building Block. Listing now consistently returns only tenant-level Building Blocks, and requesting a workspace-level Building Block by its uuid reports that it was not found. Use the newer version of the Building Block API to work with workspace-level Building Blocks.
Tenant Usage Report API Moved to the meshObject API
Audience: User
Description
The meshTenantUsageReport.v3 API is now served by the meshObject API. The objects, filters and sort parameters are
unchanged, so existing integrations keep working after switching the base URL.
Because the meshObject API authenticates with API keys, you can now scope tenant usage report access the same way you scope every other meshObject: read reports across all workspaces as an administrator, or only the reports of tenants your workspace owns. The previous endpoints were only reachable with API users, whose permissions are coarser.
The previous tenant usage report endpoints are deprecated and will be retired on 2026-10-01. Please migrate your integrations before then.
How to use
Create or update an API key and assign it the tenant usage report read permission that matches your use case (administrator or workspace scope), then call the tenant usage report meshObject API. See the meshObject API documentation for the available filter and pagination parameters.
Fix Building Block Runs Stuck In Progress After Draft Input Changes
Audience: User
Description
We fixed an issue where a Building Block Run could stay stuck in the "In Progress" status forever. This happened when someone edited a Building Block Definition's draft inputs while a Run was still executing: the mismatched input silently blocked the Run's final status update, even when the underlying infrastructure change had already completed successfully. Opening such a Run's details page could also show an error instead of the Run details. We now mark an affected Run as Failed with a clear message instead of leaving it stuck, even if its infrastructure change actually succeeded, and its details page always loads. You can retry the Run to resolve it.
Manage Restricted Landing Zones via the meshObject API
Audience: User
Description
You can now set whether a landing zone is restricted through the meshObject API. Until now this was only possible in meshPanel.
Fixed Landing Zone Restrictions Being Lost on API Updates
Audience: User
Description
Updating a landing zone through the meshObject API silently removed a restriction that had been set in meshPanel. A tofu apply, for example, could make a restricted landing zone available to every workspace without anyone noticing. We fixed this: when your request does not mention the restriction, meshStack now keeps the current setting.
General Availability for the meshEventLog v1 API
Audience: User
Description
The meshEventLog v1 meshObject API is now generally available (v1), promoted from preview. It is
stable and ready for production use, and further changes follow the standard GA versioning process.
Clients that still send the v1-preview media type keep working, because meshStack serves those
requests from the GA endpoint.
An event reports when it was created and who created it under status.created, which holds a
timestamp and an author. This matches how the other meshObject APIs report the same information.
The previous metadata.createdAt and spec.author fields are gone.
General Availability for the meshTenant v4 API
Audience: User
Description
The meshTenant v4 meshObject API is now generally available (v4), promoted from preview. It is
stable and ready for production use, and further changes follow the standard GA versioning process.
Clients that still send the v4-preview media type keep working, because meshStack serves those
requests from the GA endpoint.
The fields deprecated during preview are gone at GA. A tenant references its platform through
spec.platformRef, which is now required, and its landing zone through spec.landingZoneRef. The
spec.platformIdentifier and spec.landingZoneIdentifier inputs are gone, so a client that still
identifies its platform that way has to send spec.platformRef instead. The API rejects a request
that omits it with a 400.
Quotas are requested through the spec.requestedQuotas map and read back from status.appliedQuotas,
and the deprecated spec.quotas list is gone. The tenant name is exposed only as status.tenantName,
and status.tenantIdentifier is gone.
Fixed Sensitive Hub Building Block Inputs Not Being Encrypted
Audience: User
Description
When importing a Building Block Definition from the meshStack Hub, inputs marked as sensitive but without a pre-filled default value were imported as regular, unencrypted inputs. This affected sensitive inputs meant to be filled in by the consumer, such as secrets or API keys. These inputs are now correctly imported as sensitive and encrypted.
Fix Blank Result Dialog After Bulk Upgrading Building Blocks
Audience: User
Description
Bulk upgrading Building Blocks could show an empty result dialog with no explanation, even though the upgrade itself had already run. This happened when a selected Building Block was deleted or removed between the moment you selected it and the moment you confirmed the upgrade.
Removal of the Deprecated OpenStack Metadata API
Audience: User
Description
We removed the deprecated OpenStack metadata API. It let OpenStack inject meshStack metadata into booted servers.
You can now build this integration yourself against the meshObject API, so meshStack no longer needs to ship it as a native feature.
Migrate an Existing Identity Provider When Creating an Entra ID Integration
Audience: User
Description
You can now adopt a Microsoft Entra ID identity provider that was set up manually before you had an integration for it, instead of getting a new one created alongside it. Existing single sign-on users keep working under the same identity provider, without a switchover. Once created, the integration shows the identity provider alias it manages, alongside the redirect URL, in the integration details.
How to use
When creating a Microsoft Entra ID integration, tick "Migrate from an existing identity provider" and enter its alias. Leave the checkbox unticked to have meshStack set up a new identity provider for you, as before.
Dry Runs on Building Blocks Marked for Deletion Are Now Rejected
Audience: User
Description
Triggering a dry run on a building block that is marked for deletion no longer starts a real destroy run. We now reject the request with a clear error instead, so a dry run can never remove your cloud resources by accident.
How to use
This applies to both the meshPanel and the meshObject API. If you want to retry a failed deletion, trigger a regular run instead of a dry run.