Skip to main content

Release 2026.42.0

· 18 min read
meshcloud

Release period: 2026-10-12 to 2026-10-14

This release includes the following issues:

  • Copilot Answers Now Show Their First Paragraph or List Correctly
  • Saving a Building Block Definition Refuses Unusable Select Inputs
  • Select Input Values Must Be One of the Selectable Values
  • Select Inputs Without Selectable Values Show an Error in the Definition Editor
  • Building Block Input Values Must Match Their Input Type
  • Building Blocks Show Why No Run Starts When Their Inputs Are Too Large
  • Edit and Reorder Tag Definitions When the Limit Is Reached
  • meshStack Places New Tag Definitions After the Existing Ones
  • Order Form Shows Why a JSON Input Blocks the Order
  • Weekly E-Mail of Expiring Role Bindings for Workspace Owners and Managers
  • Building Block Run Tokens Are Hidden From Application Teams
  • Building Block Input Validation Regex Also Applies to the meshObject API
  • Restricted Tag Defaults Apply to Projects Created in meshPanel
  • Building Block Runs That Stop Reporting Now Fail After 3 Hours
  • Navigation Bar Looks Better on Smaller Screens
  • Feature Preview Adoption Counts Users Who Logged In
  • View Tenants of a Landing Zone With One Click
  • Find Workspaces by Name or Identifier in One Search Box
  • Get Copilot Help Writing Your Platform README
  • Divider Line Under the Run Steps Heading
  • Tag Descriptions in the Tag Input of Building Block Definitions
  • Workspace Owners and Managers Can Claim Building Block Runs
  • Go Back to the Runs of a Building Block From a Run's Breadcrumb
  • Users Missing From Combined Workspace and Project Role Filters
  • Clearer Response When Another Change Is in Progress
  • Faster Marketplace
  • Faster User Filtering by Workspace, Project and Role in the meshObject API
  • A Broken Input Between Building Blocks No Longer Stops a Whole Workspace
  • Copy Tenant IDs and Search Tenants by meshStack Tenant UUID
  • Move Tenants With Building Block Dependencies Within a Workspace
  • Building Block Upgrade Rejects a Dependency That Is Being Deleted
  • Create Tenants via API When a Mandatory Block's Input Does Not Apply

Ticket Details​

Copilot Answers Now Show Their First Paragraph or List Correctly​

Audience: User

Description​

When a Copilot answer started with a paragraph that contains bold text, or with a list, meshStack split it into narrow columns, so the text was hard to read. We fixed this. The first paragraph or list of a Copilot answer now flows like the rest of the answer.

Saving a Building Block Definition Refuses Unusable Select Inputs​

Audience: User

Description​

Until now you could save a building block definition with a select input that customers cannot fill in correctly. We now refuse such a save with a message that names the input, in meshPanel, the meshObject API and Terraform alike. A save is refused when a User Input of type Single Select or Multi Select offers no selectable values, or when the default value of a select input is not one of its selectable values. The match is exact and case-sensitive. Definition versions you saved before stay as they are. A Terraform apply that sends such an input now fails, so list the selectable values or fix the default value in your configuration first.

Select Input Values Must Be One of the Selectable Values​

Audience: User

Description​

When you set a Single Select or Multi Select input on a building block through the meshObject API, we now check that the value is one of the input's selectable values, as meshPanel only offers those. Before, the API stored any text. Now you get a 400 error right away that names the input and the values it takes. The check applies when you add a building block, update its inputs and upgrade it to a new definition version.

How to use​

The match is exact and case-sensitive. A select input without selectable values accepts any text value. A value a building block already holds is not checked again if you send it back unchanged, except on an upgrade: when the new version no longer offers a value the building block keeps, a bulk upgrade stops with ADDITIONAL_CONFIG_REQUIRED, so upgrade it on its own and pick a valid value. The upgrade form in meshPanel drops the values that are no longer offered: a Single Select input is left empty for you, and a Multi Select input keeps the values that are still offered.

Select Inputs Without Selectable Values Show an Error in the Definition Editor​

Audience: User

Description​

When you add a Single Select or Multi Select user input or platform operator input to a building block definition, the editor now shows an error under the selectable values until you add at least one, and you cannot save until you do. Before, you could save such an input, and whoever filled it in got an empty dropdown. If an existing definition already has such an input, add selectable values to it before you can save other changes to its inputs.

Building Block Input Values Must Match Their Input Type​

Audience: User

Description​

When you set an input value on a building block through the meshObject API, we now check that it matches the type of its input, the same way meshPanel already does. Before, a value of the wrong type, like the text "16" for an Integer input or a number for a Single Select input, was stored as it came and only made the building block run fail later. Now you get a 400 error right away that names the input and the shape it expects. We also reject an Integer value with a fraction, like 1.5, instead of cutting it off. The check applies when you add a building block, update its inputs and upgrade it to a new definition version.

How to use​

Send each input value in the shape of its type, for example text for a String input and a whole number for an Integer input. We don't check the type of a value your building block already holds again, so you can keep sending back a full building block, for example with Terraform. The exception is an upgrade to a definition version that changes the type of an input: then the value your building block holds for that input has to match the new type. See the building block concept documentation for all checks meshStack applies to input values.

Building Blocks Show Why No Run Starts When Their Inputs Are Too Large​

Audience: User

Description​

When the inputs of all building blocks in a workspace were too large together, for example because of large file inputs, meshStack could not start their runs. The building blocks then stayed pending for hours without any explanation until meshStack marked them as failed. Now we show the reason right away on every building block in that workspace that waits for a run, and send the usual failure notification, so you know to reduce the inputs.

Edit and Reorder Tag Definitions When the Limit Is Reached​

Audience: User

Description​

When your meshStack has reached the maximum number of tag definitions, you can now still edit and reorder the existing ones. Previously every save was rejected once the limit was reached, so you could not change any tag definition without deleting another one first.

meshStack Places New Tag Definitions After the Existing Ones​

Audience: User

Description​

When you create a tag definition in meshPanel or through the meshObject API without a sort order, meshStack now places it after the existing tag definitions of the same object type. Previously several new tag definitions could end up in a random order among each other until you reordered them by hand.

Order Form Shows Why a JSON Input Blocks the Order​

Audience: User

Description​

When you order a building block whose JSON input still needs a value, the order form now tells you so. Before, the "Add service to workspace" button could stay disabled without any message, for example when the input's schema starts a list empty. You now see "Input Value is required." under the input. A list in the input also shows why it is not valid, for example "This field is required." once you remove the last entry of a required list. If the schema starts a list empty and allows that, the input now counts as filled in, so you can order right away.

Weekly E-Mail of Expiring Role Bindings for Workspace Owners and Managers​

Audience: User

Description​

As a workspace owner or workspace manager, you now get an e-mail every Monday that lists the role bindings in your workspaces that expire within the next 30 days. The list covers user and group bindings on the workspace and on its projects, grouped by workspace and project. Each group links to the page where you can set a new expiration date. You can now recertify access before people lose it, without checking each workspace by hand. If you manage several workspaces, you get one e-mail that covers all of them. When nothing expires within 30 days, we send no e-mail.

Building Block Run Tokens Are Hidden From Application Teams​

Audience: User

Description​

We further secured the building block run API. The run token of a building block run is now only returned to the runner executing the run, to the platform team managing it and to administrators. Everyone else, including the application team that owns the building block, gets a placeholder instead.

Building Block Input Validation Regex Also Applies to the meshObject API​

Audience: User

Description​

When a building block definition input has a value validation regex with a validation message, we now check it for every value you set or change through the meshObject API, not only in meshPanel. Before, the API accepted a value that meshPanel refused. Now you get a 400 error right away that names the input and shows its validation message. This also covers sensitive inputs: we check the plain text you send before we encrypt it.

How to use​

The regex has to match the whole value. A value a building block already holds is not checked again if you send it back unchanged, so you can keep sending back a full building block, for example with Terraform. When you upgrade a building block, a value it keeps still has to match the new version's regex, as before. If a regex cannot be checked against a value, because the check would take too long or the regex fails on a long value, we refuse the value with a 400 error that names the input; simplify the regex in the building block definition to fix it.

Restricted Tag Defaults Apply to Projects Created in meshPanel​

Audience: User

Description​

When you create a project in meshPanel, it now receives the default values of all restricted tag definitions, just like a project created through the API or by an admin. Previously these defaults were silently dropped when a user without administrator rights created a project. You still cannot choose a value for a restricted tag yourself: only its default value is applied.

Building Block Runs That Stop Reporting Now Fail After 3 Hours​

Audience: User

Description​

A building block run that sends no status update for 3 hours now fails, and meshStack no longer retries it. Until now, meshStack started the run's implementation, for example a pipeline, again, which could repeat what the implementation does. To try again, trigger a new run. Our building block runners now retry their status updates, so a short meshStack outage no longer loses a run's result. If you run your own runners, update them to the latest version.

How to use​

If your building block runs an asynchronous pipeline, make sure it sends a status update at least every 3 hours and a final status at the end, and that it retries its status updates while meshStack is briefly unavailable. The building block documentation describes what the pipeline must do.

Audience: User

Description​

The top navigation bar is now nicer to use on smaller screens. The workspace, project and tenant names no longer overlap the language picker, the notifications bell or the Admin Area button. Long names now end with "..." so everything fits.

Feature Preview Adoption Counts Users Who Logged In​

Audience: User

Description​

"Total eligible users" in the Feature Previews overview now counts every user who logged in to meshStack at least once. Before, it only counted users who had logged in during the last 3 months.

View Tenants of a Landing Zone With One Click​

Audience: User

Description​

The landing zone list now has a "View Tenants" action in the Actions menu of each landing zone. It opens the tenant list for exactly that landing zone, so you can see which tenants still use it before you deprecate it. You find the action in the Admin Area and in the Landing Zones tab of a platform.

The tenant list shows all tenants of the landing zone except deleted ones. We do not show the landing zone as a filter in the table. To see all tenants again, open the Tenants page from the menu.

Audience: User

Description​

The Workspaces list in the admin area now shows the name and the identifier of each workspace in one column, as the Projects list does. The search box above this column finds a workspace by its name or by its identifier, so you no longer have to know which of the two columns to use. Links from other admin pages open the list with the workspace already entered in this box.

Get Copilot Help Writing Your Platform README​

Audience: User

Description​

The README field of the platform form now has a "Get help" button, just like the Description field. It opens Copilot with a prompt that already contains your platform name and description, so you get a first README draft that you can refine. The button is available when you create a platform and when you edit one, if Copilot is enabled for you.

Divider Line Under the Run Steps Heading​

Audience: User

Description​

The run steps of a Building Block now have a divider line under their heading, like the other cards on the Building Block overview.

Tag Descriptions in the Tag Input of Building Block Definitions​

Audience: User

Description​

When you pick a tag for a tag input, the selector now shows the description of each tag.

Workspace Owners and Managers Can Claim Building Block Runs​

Audience: User

Description​

Workspace Owners and Workspace Managers can now claim runs for the Building Block runners of their own workspace. This prepares upcoming features that let you start a runner with your meshStack CLI login.

Go Back to the Runs of a Building Block From a Run's Breadcrumb​

Audience: User

Description​

When you open a building block run in the admin area or in the platform builder, the breadcrumb now shows a "Runs" step between the building block and the run. You can use it to go straight back to the list of runs of that building block, instead of opening the building block and then its Runs tab.

Users Missing From Combined Workspace and Project Role Filters​

Audience: User

Description​

Listing users through the meshObject API with a workspace role filter together with a project or project role filter now returns every user who matches both filters. Before, a user was left out when the workspace role and the project role came from two different groups. For example, a Workspace Manager through one group who is Project Admin through a second group was missing from a request for Workspace Managers with the Project Admin role.

A user was also left out, even with only a workspace filter, when the group that grants the project role had lost its own workspace access, while the user is still a member of the workspace through another group. Expired workspace access of a group does not end the group's project roles: the user still sees the project in meshPanel and keeps the role on the project's tenants. The API now lists such users as well, so its result matches what these users can actually access.

Clearer Response When Another Change Is in Progress​

Audience: User

Description​

When another change to the same object is still in progress and your request has to wait too long for it, meshStack now answers with status 423 (Locked) and the message "Another change to this object is in progress. Please try again." Before, you got a generic internal error (500). Send the request again a moment later.

Faster Marketplace​

Audience: User

Description​

We made the marketplace load a bit faster, so you wait less when you browse and page through its services. More performance improvements are on the way.

Faster User Filtering by Workspace, Project and Role in the meshObject API​

Audience: User

Description​

Listing users through the meshObject API with a workspace, project, role or platform filter is now much faster. Before, a request that combined a workspace with a project role could take 10 seconds or more when the result spanned more than one page, especially in meshStacks where users belong to many groups. In our measurements, such requests now return in a fraction of a second.

A Broken Input Between Building Blocks No Longer Stops a Whole Workspace​

Audience: User

Description​

When a building block took an input from an output of its parent building block that does not exist or has a type that cannot fill the input, all other building blocks in the same workspace stopped too. Now only that building block and the ones that depend on it are skipped, and the building block shows the reason.

Copy Tenant IDs and Search Tenants by meshStack Tenant UUID​

Audience: User

Description​

You can now copy the Platform Tenant ID and the meshStack Tenant UUID with one click on the Tenant details page in the Admin Area. The search in the Tenants table also finds a Tenant by its meshStack Tenant UUID, so you can paste an ID from another system and go straight to the Tenant.

How to use​

Open a Tenant from the Tenants table in the Admin Area and click an ID to copy it. To search, enter the whole meshStack Tenant UUID, or a part of it, into the Tenant search field of the Tenants table.

Move Tenants With Building Block Dependencies Within a Workspace​

Audience: User

Description​

You can now move a tenant to another project in the same workspace even when its building blocks depend on building blocks outside the tenant, such as a workspace building block. Before, we rejected this move, although it keeps every dependency intact. For a move to another workspace, we now also reject the move when a building block on another tenant depends on one of the tenant's building blocks. Before, the move went through and the dependent building block could no longer run. Such dependencies across tenants can only be created through the meshObject API.

Building Block Upgrade Rejects a Dependency That Is Being Deleted​

Audience: User

Description​

When you upgrade a Building Block to a version that needs a new dependency, you can no longer pick a dependency that is already being deleted. Before, the upgrade was accepted and the Building Block was left depending on a block that was about to disappear, so it could no longer run or be deleted normally. Now the upgrade is rejected with a message that names the dependency. This applies in the meshPanel and in the meshObject API. Choose another dependency or wait until the deletion is finished and create a new one.

Create Tenants via API When a Mandatory Block's Input Does Not Apply​

Audience: User

Description​

A mandatory building block input can have a condition that decides whether the input applies. When that condition is not met for the default values of the other inputs, the input is now ignored when meshStack checks whether the block can be created, so you can create the tenant through the meshTenant API. Previously, the API rejected the tenant with an error about missing inputs, even though meshStack does not ask for an input whose condition is not met. If the condition is met, the input is required and the API still rejects the tenant, because you cannot provide the input through the API.