diff --git a/COMPONENTS.md b/COMPONENTS.md
index 1b98786152..59b8ad11ed 100644
--- a/COMPONENTS.md
+++ b/COMPONENTS.md
@@ -20,6 +20,7 @@ Whether you’re using core components or experimenting with new ones, this guid
- [Using Components in MDX Source Files](#using-components-in-mdx-source-files)
- [Using CaptionedImage](#using-captionedimage)
- [Using DiscoverableDisclosure](#using-discoverabledisclosure)
+- [Using ReleaseStage](#using-releasestage)
- [Using DocsTable](#using-docstable)
- [Using PhotoCarousel](#using-photocarousel)
- [Using RelatedRead](#using-relatedread)
@@ -170,6 +171,59 @@ Usage:
An additional `prompt` prop enables you to specify the leading text.
Normally it defaults to `prompt = "Dive deeper — "`.
+## Using ReleaseStage
+
+Role: Standardized callout for features in Pre-release or Public Preview.
+
+General Availability features do not need a callout - GA is the default/assumed state.
+
+Usage:
+
+```
+
+```
+
+This renders a `:::tip Support, stability, and dependency info` callout with the text:
+"Provisioned Capacity is in [Public Preview](/evaluate/development-production-features/release-stages#public-preview)."
+
+### Props
+
+- **`stage`** (optional): `"pre-release"` | `"public-preview"`. Determines the release stage link and label.
+- **`feature`** (optional): The feature name. Used to generate the callout text (e.g. "Feature X is in Public Preview.").
+- **`verb`** (optional): Defaults to `"is"`. Set to `"are"` for plural feature names.
+- **`children`** (optional): Additional content shown below the auto-generated text, or the entire callout body for custom callouts.
+
+If you use the auto-generated text, pass a `feature`. There is no generic no-feature mode.
+
+### With additional context
+
+```
+
+All APIs are experimental and may be subject to backwards-incompatible changes.
+
+```
+
+### Plural feature names
+
+```
+
+```
+
+### Children-only mode
+
+For complex cases where the auto-generated text doesn't fit:
+
+```
+
+Same-region Replication and Multi-cloud Replication are in
+[Public Preview](/evaluate/development-production-features/release-stages#public-preview).
+
+```
+
## Using DocsTable
In certain rare instances, standard Markdown tables won't work for our needs.
diff --git a/docs/cloud/capacity-modes.mdx b/docs/cloud/capacity-modes.mdx
index 3a4f085a11..f43a55ad76 100644
--- a/docs/cloud/capacity-modes.mdx
+++ b/docs/cloud/capacity-modes.mdx
@@ -27,6 +27,8 @@ tags:
- TRUs
---
+import { ReleaseStage } from '@site/src/components';
+
Each Namespace in Temporal has a rate limit, which is measured in [Actions](/cloud/pricing#action) per second.
Temporal offers two different modes for adjusting capacity: On-Demand Capacity or Provisioned Capacity.
With On-Demand Capacity, Namespace capacity is increased automatically along with usage.
@@ -97,12 +99,10 @@ Actions that are external to the core Temporal service do not contribute to your
Using On-Demand Capacity, your rate limit grows automatically along with your usage.
-
| | Actions Per Second | Requests Per Second | Operations Per Second|
|---------------|--------------------|---------------------|----------------------|
| Default Limit | 500 | 2000 | 4000 |
-
Scaling automatically adjusts based on the lesser of 4 * APS Average or 2 * APS P90 over the past 7 days.
If you experience usage spikes, you may hit a throughput limit.
@@ -129,11 +129,7 @@ This means that your default limit would be 800 APS.
## Provisioned Capacity {#provisioned-capacity}
-:::tip Support, stability, and dependency info
-
-Provisioned Capacity is currently in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
Provisioned Capacity provides an alternative to On-Demand Capacity by allowing you to control the limits on your Namespace based on your specific need.
@@ -162,7 +158,6 @@ The amount of capacity available within a region may vary.
Temporal will check available capacity at the time of your request and aims to provision requested capacity within two minutes.
If you need capacity beyond what is self-serviceable or available in a region, please [file a support ticket](https://docs.temporal.io/cloud/support#ticketing) indicating the limit, region, and timeframe that the capacity is needed.
-
### When should I use Provisioned Capacity?
Provisioned Capacity works well when you’re aware of specific increases in load on your Namespace. For example:
diff --git a/docs/cloud/connectivity/index.mdx b/docs/cloud/connectivity/index.mdx
index 29b72b2ead..6fab578b2c 100644
--- a/docs/cloud/connectivity/index.mdx
+++ b/docs/cloud/connectivity/index.mdx
@@ -18,7 +18,7 @@ keywords:
- term
---
-import { ToolTipTerm, DiscoverableDisclosure, CaptionedImage, SdkTabs } from '@site/src/components';
+import { CaptionedImage, DiscoverableDisclosure, ReleaseStage, SdkTabs, ToolTipTerm } from '@site/src/components';
import { LANGUAGE_TAB_GROUP, getLanguageLabel } from '@site/src/constants/languageTabs';
## Private network connectivity for namespaces
@@ -57,11 +57,7 @@ For step 3, keep reading for details on [connectivity rules](/cloud/connectivity
## Connectivity rules
-:::tip Support, stability, and dependency info
-
-Connectivity rules are currently in [public preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
:::info Web UI Connectivity
@@ -177,7 +173,6 @@ tcld namespace set-connectivity-rules --namespace "my-namespace.abc123" --remove
[Example in the Terraform repo](https://github.com/temporalio/terraform-provider-temporalcloud/tree/main/examples/resources/temporalcloud_namespace/resource.tf#L113-L128)
-
## View the connectivity rules for a namespace
You have two ways to view the connectivity rules attached to a particular namespace.
diff --git a/docs/cloud/high-availability/enable.mdx b/docs/cloud/high-availability/enable.mdx
index 26c018cd14..8ad21095bd 100644
--- a/docs/cloud/high-availability/enable.mdx
+++ b/docs/cloud/high-availability/enable.mdx
@@ -6,17 +6,13 @@ slug: /cloud/high-availability/enable
description: Get started with HA features
---
-import { ToolTipTerm } from '@site/src/components';
+import { ReleaseStage, ToolTipTerm } from '@site/src/components';
-:::tip Support, stability, and dependency info
+
+Same-region Replication and Multi-cloud Replication are in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-Same-region Replication and Multi-cloud Replication are in
-[Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-Multi-region Replication is in
-[General Availability](/evaluate/development-production-features/release-stages#general-availability)
-
-:::
+Multi-region Replication is in [General Availability](/evaluate/development-production-features/release-stages#general-availability).
+
You can enable High Availability features
([Single-region Replication](/cloud/high-availability#same-region-replication),
diff --git a/docs/cloud/high-availability/index.mdx b/docs/cloud/high-availability/index.mdx
index e386f318c7..2aff620b6c 100644
--- a/docs/cloud/high-availability/index.mdx
+++ b/docs/cloud/high-availability/index.mdx
@@ -18,7 +18,7 @@ keywords:
- temporal-cloud
---
-import { ToolTipTerm, DiscoverableDisclosure, CaptionedImage } from '@site/src/components';
+import { CaptionedImage, DiscoverableDisclosure, ReleaseStage, ToolTipTerm } from '@site/src/components';
Temporal Cloud's High Availability features use asynchronous across multiple to provide enhanced resilience and a 99.99% [SLA](/cloud/sla).
When you enable High Availability features, Temporal deploys your primary and its in separate isolation domains, giving you control over the location of both. This redundancy, combined with capability, enhances availability during outages.
@@ -37,13 +37,11 @@ This provides the basis of our 99.9% service level.
## High Availability features {#high-availability-features}
-:::tip Support, stability, and dependency info
-
+
Same-region Replication and Multi-cloud Replication are in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-Multi-region Replication is in [General Availability](/evaluate/development-production-features/release-stages#general-availability)
-
-:::
+Multi-region Replication is in [General Availability](/evaluate/development-production-features/release-stages#general-availability).
+
High Availability features provide three types of replication:
diff --git a/docs/cloud/metrics/openmetrics/api-reference.mdx b/docs/cloud/metrics/openmetrics/api-reference.mdx
index d7d4825885..e30ac48cf9 100644
--- a/docs/cloud/metrics/openmetrics/api-reference.mdx
+++ b/docs/cloud/metrics/openmetrics/api-reference.mdx
@@ -21,15 +21,11 @@ tags:
- Temporal Cloud
---
-import { CaptionedImage } from '@site/src/components';
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
The Temporal Cloud OpenMetrics API provides actionable operational metrics about your Temporal Cloud deployment. This is a scrapable HTTP API that returns metrics in OpenMetrics format, suitable for ingestion by Prometheus-compatible monitoring systems.
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Cloud OpenMetrics support is available in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
## Available Metrics Reference
@@ -314,7 +310,6 @@ scrape_configs:
:::
-
### Label Management
#### Prometheus
diff --git a/docs/cloud/metrics/openmetrics/index.mdx b/docs/cloud/metrics/openmetrics/index.mdx
index 7eacae9b3d..070305b22e 100644
--- a/docs/cloud/metrics/openmetrics/index.mdx
+++ b/docs/cloud/metrics/openmetrics/index.mdx
@@ -22,11 +22,9 @@ tags:
- Temporal Cloud
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
+import { ReleaseStage } from '@site/src/components';
-Temporal Cloud OpenMetrics support is available in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
:::tip PRICING
diff --git a/docs/cloud/metrics/openmetrics/metrics-integrations.mdx b/docs/cloud/metrics/openmetrics/metrics-integrations.mdx
index da3b92dd56..d0e6a4e950 100644
--- a/docs/cloud/metrics/openmetrics/metrics-integrations.mdx
+++ b/docs/cloud/metrics/openmetrics/metrics-integrations.mdx
@@ -21,17 +21,13 @@ tags:
- Temporal Cloud
---
-import { CaptionedImage } from '@site/src/components';
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
Metrics can be exported from Temporal Cloud using the OpenMetrics endpoint. This document describes configuring integrations that have third party support or are based on open standards.
This document is for basic configuration only. For advanced concepts such as label management and high cardinality scenarios see the
[general API reference](/cloud/metrics/openmetrics/api-reference).
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Cloud OpenMetrics support is available in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
## Integrations
diff --git a/docs/cloud/metrics/openmetrics/metrics-reference.mdx b/docs/cloud/metrics/openmetrics/metrics-reference.mdx
index ea99b0c716..cf9ff26d5e 100644
--- a/docs/cloud/metrics/openmetrics/metrics-reference.mdx
+++ b/docs/cloud/metrics/openmetrics/metrics-reference.mdx
@@ -21,13 +21,11 @@ tags:
- Temporal Cloud
---
-This document describes all metrics available from the Temporal Cloud OpenMetrics endpoint.
-
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
+import { ReleaseStage } from '@site/src/components';
-Temporal Cloud OpenMetrics support is available in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
+This document describes all metrics available from the Temporal Cloud OpenMetrics endpoint.
-:::
+
## Metric Conventions
diff --git a/docs/cloud/metrics/openmetrics/migration-guide.mdx b/docs/cloud/metrics/openmetrics/migration-guide.mdx
index b21b555844..ddd6c3048d 100644
--- a/docs/cloud/metrics/openmetrics/migration-guide.mdx
+++ b/docs/cloud/metrics/openmetrics/migration-guide.mdx
@@ -21,7 +21,7 @@ tags:
- Temporal Cloud
---
-import { RelatedReadContainer, RelatedReadItem } from '@site/src/components';
+import { RelatedReadContainer, RelatedReadItem, ReleaseStage } from '@site/src/components';
import { CaptionedImage } from '@site/src/components';
Temporal Cloud is transitioning from our Prometheus query endpoint to an industry-standard OpenMetrics
@@ -29,13 +29,11 @@ Temporal Cloud is transitioning from our Prometheus query endpoint to an industr
can monitor your Temporal Cloud workloads, bringing enhanced capabilities, better integration with observability tools,
and access to high-cardinality metrics that were previously unavailable.
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
+
-The OpenMetrics endpoint is available in
-[Public Preview](/evaluate/development-production-features/release-stages#public-preview) for testing and validation.
The existing Prometheus query endpoint remains fully operational and supported.
-:::
+
## Why We're Making This Change
diff --git a/docs/cloud/migrate/automated.mdx b/docs/cloud/migrate/automated.mdx
index 7fd13e86fb..3c1d6bc6cb 100644
--- a/docs/cloud/migrate/automated.mdx
+++ b/docs/cloud/migrate/automated.mdx
@@ -18,11 +18,9 @@ tags:
- Production
---
-:::tip Support, stability, and dependency info
+import { ReleaseStage } from '@site/src/components';
-Automated migration is currently in [Pre-release](/evaluate/development-production-features/release-stages#pre-release).
-
-:::
+
## Process Overview
diff --git a/docs/cloud/nexus/index.mdx b/docs/cloud/nexus/index.mdx
index 9225092f64..671c134042 100644
--- a/docs/cloud/nexus/index.mdx
+++ b/docs/cloud/nexus/index.mdx
@@ -25,13 +25,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
[Temporal Nexus](/nexus) allows you to connect Temporal Applications across (and within) isolated Namespaces.
This provides all the benefits of Durable Execution across team and application boundaries with improved modularity, security, debugging, and fault isolation.
Nexus supports cross-team, cross-domain, cross-namespace, multi-region, and multi-cloud use cases.
diff --git a/docs/cloud/nexus/latency-availability.mdx b/docs/cloud/nexus/latency-availability.mdx
index 3a4ffee8ac..5bf29edc2b 100644
--- a/docs/cloud/nexus/latency-availability.mdx
+++ b/docs/cloud/nexus/latency-availability.mdx
@@ -22,13 +22,6 @@ keywords:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
Nexus requests (commands, polling) have the same latency SLOs and error rate SLAs as other Worker requests in both the caller and handler Namespaces.
## Latency metrics
diff --git a/docs/cloud/nexus/limits.mdx b/docs/cloud/nexus/limits.mdx
index bb47f1b312..7c867173e3 100644
--- a/docs/cloud/nexus/limits.mdx
+++ b/docs/cloud/nexus/limits.mdx
@@ -18,13 +18,6 @@ keywords:
- max operation duration
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
Temporal Cloud has default limits for several aspects of Nexus.
Many of these defaults are configurable, so if you need them changed please open a support ticket.
diff --git a/docs/cloud/nexus/observability.mdx b/docs/cloud/nexus/observability.mdx
index a06725ee27..b8a2111541 100644
--- a/docs/cloud/nexus/observability.mdx
+++ b/docs/cloud/nexus/observability.mdx
@@ -17,14 +17,6 @@ keywords:
- audit log streaming
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now
-[Generally Available](/evaluate/development-production-features/release-stages#general-availability). Learn why you
-should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
Nexus provides metrics and audit log streaming, in addition to integrated
[execution debugging](/nexus/execution-debugging).
diff --git a/docs/cloud/nexus/pricing.mdx b/docs/cloud/nexus/pricing.mdx
index 1e128b1bdb..7c5ce4f753 100644
--- a/docs/cloud/nexus/pricing.mdx
+++ b/docs/cloud/nexus/pricing.mdx
@@ -13,13 +13,6 @@ keywords:
- Temporal Cloud pricing
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
The pricing for [Temporal Nexus](/evaluate/nexus) is:
- **One Action to start or cancel a Nexus Operation** in the caller Namespace.
diff --git a/docs/cloud/nexus/security.mdx b/docs/cloud/nexus/security.mdx
index 9e8fd67ed5..458061cfa5 100644
--- a/docs/cloud/nexus/security.mdx
+++ b/docs/cloud/nexus/security.mdx
@@ -16,13 +16,6 @@ keywords:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
Temporal Cloud has built-in Nexus security.
It provides secure Nexus connectivity across Namespaces with an mTLS secured Envoy mesh.
Workers authenticate to their Namespace with mTLS client certificates or API keys, as allowed by their Namespace.
diff --git a/docs/cloud/operation-api.mdx b/docs/cloud/operation-api.mdx
index 498f2a1606..3c1cc084de 100644
--- a/docs/cloud/operation-api.mdx
+++ b/docs/cloud/operation-api.mdx
@@ -12,11 +12,9 @@ tags:
- Temporal Cloud
---
-:::tip Support, stability, and dependency info
+import { ReleaseStage } from '@site/src/components';
-The Temporal Cloud Operations API is in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
The Temporal Cloud Operations API, or the Cloud Ops API, is an open source, public [HTTP API](https://saas-api.tmprl.cloud/docs/httpapi.html#description/introduction) and [gRPC API](https://github.com/temporalio/cloud-api/tree/main) for programmatically managing Temporal Cloud control plane resources, including [Namespaces](/cloud/namespaces), [Users](/cloud/users), [Service Accounts](/cloud/service-accounts), [API keys](/cloud/api-keys), and others. The Temporal Cloud [Terraform Provider](/cloud/terraform-provider), [tcld CLI](/cloud/tcld), and Web UI all use the Cloud Ops API.
diff --git a/docs/cloud/worker-health.mdx b/docs/cloud/worker-health.mdx
index c3085b5a15..fccd452d2c 100644
--- a/docs/cloud/worker-health.mdx
+++ b/docs/cloud/worker-health.mdx
@@ -26,6 +26,9 @@ keywords:
- workflow task execution size
- temporal worker resources
---
+
+import { ReleaseStage } from '@site/src/components';
+
import { LANGUAGE_TAB_GROUP, getLanguageLabel } from '@site/src/constants/languageTabs';
import SdkTabs from '@site/src/components';
import Tabs from '@theme/Tabs';
@@ -401,11 +404,7 @@ rate(temporal_sticky_cache_total_forced_eviction_total{namespace="$namespace"}[5
## Manage Worker Heartbeating {#manage-worker-heartbeating}
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-This feature is currently in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
Workers send a heartbeat to Temporal Server every 60 seconds by default. This heartbeat serves to provide liveness and configuration data from the Worker to the Server.
Specific data sent can be found in the [API](https://github.com/temporalio/api/blob/master/temporal/api/worker/v1/message.proto). By providing a consistent heartbeat from
@@ -425,4 +424,3 @@ Use `TelemetryConfig()` to adjust heartbeat settings. See the [Python SDK docume
Add configurations to `Runtime()` to adjust heartbeat settings. See the [Ruby SDK documentation](https://ruby.temporal.io/Temporalio/Runtime.html) for more details.
-
diff --git a/docs/develop/dotnet/temporal-nexus.mdx b/docs/develop/dotnet/temporal-nexus.mdx
index c4a6c9c66d..b3670f79e5 100644
--- a/docs/develop/dotnet/temporal-nexus.mdx
+++ b/docs/develop/dotnet/temporal-nexus.mdx
@@ -14,15 +14,9 @@ tags:
- .NET SDK
---
-import { CaptionedImage } from '@site/src/components';
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal .NET SDK support for Nexus is at [Pre-release](/evaluate/development-production-features/release-stages#pre-release).
-
-All APIs are experimental and may be subject to backwards-incompatible changes.
-
-:::
+
Use [Temporal Nexus](/evaluate/nexus) to connect Temporal Applications within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.
diff --git a/docs/develop/go/temporal-nexus.mdx b/docs/develop/go/temporal-nexus.mdx
index b388ea6602..0217c94222 100644
--- a/docs/develop/go/temporal-nexus.mdx
+++ b/docs/develop/go/temporal-nexus.mdx
@@ -18,12 +18,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Go SDK support for Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-
-:::
-
Use [Temporal Nexus](/evaluate/nexus) to connect Temporal Applications within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.
This page shows how to do the following:
diff --git a/docs/develop/java/temporal-nexus.mdx b/docs/develop/java/temporal-nexus.mdx
index 53bc3e6333..0d6d188180 100644
--- a/docs/develop/java/temporal-nexus.mdx
+++ b/docs/develop/java/temporal-nexus.mdx
@@ -16,12 +16,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Java SDK support for Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-
-:::
-
Use [Temporal Nexus](/evaluate/nexus) to connect Temporal Applications within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.
This page shows how to do the following:
diff --git a/docs/develop/python/temporal-nexus.mdx b/docs/develop/python/temporal-nexus.mdx
index 289c2b852f..1f4f8d6117 100644
--- a/docs/develop/python/temporal-nexus.mdx
+++ b/docs/develop/python/temporal-nexus.mdx
@@ -14,17 +14,9 @@ tags:
- Python SDK
---
-import { CaptionedImage } from '@site/src/components';
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Python SDK support for Nexus is at [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-Features in public preview may undergo further development and testing before they are made Generally Available.
-These features are being refined and are recommended for production usage.
-The APIs may undergo changes; however, Temporal's goal is to maintain backward compatibility.
-
-:::
+
Use [Temporal Nexus](/evaluate/nexus) to connect Temporal Applications within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.
@@ -108,17 +100,14 @@ from dataclasses import dataclass
import nexusrpc
-
@dataclass
class MyInput:
name: str
-
@dataclass
class MyOutput:
message: str
-
@nexusrpc.service
class MyNexusService:
my_sync_operation: nexusrpc.Operation[MyInput, MyOutput]
@@ -154,7 +143,6 @@ class MyNexusServiceHandler:
return MyOutput(message=f"Hello {input.name} from sync operation!")
```
-
A synchronous operation handler must return quickly (less than `10s`).
In addition to performing simple CPU-bound computations such as the one above, implementations are free to make arbitrary calls to other services or databases.
The handler function can access an SDK client that can be used to execute Signals, Updates, or Queries against a Workflow, or to do other client operations such as listing Workflows.
@@ -162,7 +150,6 @@ The [nexus_sync_operations](https://github.com/temporalio/samples-python/blob/ma
[nexus_sync_operations/handler/service_handler.py](https://github.com/temporalio/samples-python/blob/main/nexus_sync_operations/handler/service_handler.py)
-
```python
from temporalio import nexus
@@ -180,7 +167,6 @@ class GreetingServiceHandler:
In addition to `nexus.client()`, you can use `nexus.info()` to access information about the currently-executing Nexus Operation including its Task Queue.
-
### Develop an Asynchronous Nexus Operation handler to start a Workflow
Use the `@nexus.workflow_run_operation` decorator, which is the easiest way to expose a Workflow as an operation.
@@ -244,11 +230,9 @@ class MyNexusServiceHandler:
id=str(uuid.uuid4()),
)
-
```
-
### Register your Nexus Service handler in a Worker
After developing an asynchronous Nexus Operation handler to start a Workflow, the next step is to register your Nexus Service handler in a Worker.
diff --git a/docs/develop/typescript/temporal-nexus.mdx b/docs/develop/typescript/temporal-nexus.mdx
index 3be0683ea2..e3b816975d 100644
--- a/docs/develop/typescript/temporal-nexus.mdx
+++ b/docs/develop/typescript/temporal-nexus.mdx
@@ -14,15 +14,9 @@ tags:
- TypeScript SDK
---
-import { CaptionedImage } from "@site/src/components";
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal TypeScript SDK support for Nexus is at [Pre-release](/evaluate/development-production-features/release-stages#pre-release).
-
-All APIs are experimental and may be subject to backwards-incompatible changes.
-
-:::
+
Use [Temporal Nexus](/evaluate/nexus) to connect Temporal Applications within and across Namespaces using a Nexus Endpoint, a Nexus Service contract, and Nexus Operations.
diff --git a/docs/develop/worker-performance.mdx b/docs/develop/worker-performance.mdx
index e7e28e466b..400474ba05 100644
--- a/docs/develop/worker-performance.mdx
+++ b/docs/develop/worker-performance.mdx
@@ -9,7 +9,7 @@ tags:
- Performance
---
-import { CaptionedImage } from '@site/src/components';
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
import { LANGUAGE_TAB_GROUP, getLanguageLabel } from '@site/src/constants/languageTabs';
import SdkTabs from '@site/src/components';
@@ -118,12 +118,11 @@ If it does, it may try to reserve an Activity Slot for the execution of the Acti
#### Eager Workflow Start
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
+
-Eager Workflow Start is available in [Public Preview](/evaluate/development-production-features/release-stages#public-preview) in the Go, Java, Python, and .NET SDKs.
Temporal Cloud and Temporal Server 1.29.0 and higher have Eager Workflow Start available for use by default, but you must explicitly Request-Eager-Start when starting a Workflow.
-:::
+
Eager Workflow Start reduces the latency required to initiate a Workflow execution.
It is recommended for short-lived Workflows that use Local Activities to interact with external services, especially when these interactions are initiated in the first Workflow Task and the Workflow is deployed near the Temporal Server to minimize network delay.
@@ -377,7 +376,6 @@ When choosing whether to opt for fixed assignment or resource-based suppliers, c
- Reserve auto-tuned resource-based slot suppliers for deployments focused on avoiding Worker overload.
They provide excellent balance with built-in throttling that ensures the Worker will be cautious when handing out new executor slots.
-
Scenarios with tasks that have variable, or very high, resource needs should rely on fixed-size
suppliers and manual tuning. The resource-based tuner can never perform as well as a fixed-size
tuner with appropriately chosen configuration, but can offer reasonable performance without the
diff --git a/docs/encyclopedia/nexus-endpoints.mdx b/docs/encyclopedia/nexus-endpoints.mdx
index ac9a497f00..43a07d7264 100644
--- a/docs/encyclopedia/nexus-endpoints.mdx
+++ b/docs/encyclopedia/nexus-endpoints.mdx
@@ -16,12 +16,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
A [Temporal Nexus Endpoint](/glossary#nexus-endpoint) is a reverse proxy that can route Nexus requests from a caller Workflow to an upstream target Namespace and Task Queue.
A [Nexus Service](/nexus/services) runs in a Worker that is polling the Endpoint's target Task Queue.
diff --git a/docs/encyclopedia/nexus-error-handling.mdx b/docs/encyclopedia/nexus-error-handling.mdx
index 62463bc081..73c007115d 100644
--- a/docs/encyclopedia/nexus-error-handling.mdx
+++ b/docs/encyclopedia/nexus-error-handling.mdx
@@ -15,12 +15,6 @@ tags:
- Nexus
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
Nexus Operations can return an error for a caller Workflow to handle.
If an asynchronous Nexus Operation starts a Workflow that returns an error, it will be propagated back to the caller Workflow.
diff --git a/docs/encyclopedia/nexus-execution-debugging.mdx b/docs/encyclopedia/nexus-execution-debugging.mdx
index f5f06bb331..7bd592c06f 100644
--- a/docs/encyclopedia/nexus-execution-debugging.mdx
+++ b/docs/encyclopedia/nexus-execution-debugging.mdx
@@ -15,12 +15,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
Nexus supports end-to-end execution debugging that may span:
- Caller Workflows
diff --git a/docs/encyclopedia/nexus-metrics.mdx b/docs/encyclopedia/nexus-metrics.mdx
index debf55c4fe..1d4109b4f6 100644
--- a/docs/encyclopedia/nexus-metrics.mdx
+++ b/docs/encyclopedia/nexus-metrics.mdx
@@ -17,12 +17,6 @@ keywords:
- nexus oss metrics
---
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
Nexus provides SDK metrics, Cloud metrics, and OSS Cluster metrics in addition to integrated [execution debugging](/nexus/execution-debugging).
## SDK Metrics
diff --git a/docs/encyclopedia/nexus-operations.mdx b/docs/encyclopedia/nexus-operations.mdx
index 88a0d8800f..1c752b223c 100644
--- a/docs/encyclopedia/nexus-operations.mdx
+++ b/docs/encyclopedia/nexus-operations.mdx
@@ -25,13 +25,7 @@ tags:
---
-import { CaptionedImage } from '@site/src/components';
-
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
+import { CaptionedImage, ReleaseStage } from '@site/src/components';
[Nexus Operations](/glossary#nexus-operation) are arbitrary-duration operations that may be synchronous or asynchronous, short-lived or long-lived, and are used to connect Temporal Applications within and across Namespaces, clusters, regions, and clouds.
@@ -330,11 +324,9 @@ Callers can then migrate to the new version in their normal deployment schedule.
## Attaching multiple Nexus callers to a handler Workflow {#attaching-multiple-nexus-callers}
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Using a [Conflict-Policy of Use-Existing](/workflow-execution/workflowid-runid#workflow-id-conflict-policy) with the [New-Workflow-Run-Operation](/nexus/operations#sdk-support) SDK helper is currently a [Public Preview](/evaluate/development-production-features/release-stages#public-preview) feature.
-
-:::
+
+Using a [Conflict-Policy of Use-Existing](/workflow-execution/workflowid-runid#workflow-id-conflict-policy) with the [New-Workflow-Run-Operation](/nexus/operations#sdk-support) SDK helper is in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
+
:::tip CLOUD LIMITS
diff --git a/docs/encyclopedia/nexus-registry.mdx b/docs/encyclopedia/nexus-registry.mdx
index afe8c8c233..17a4ab0013 100644
--- a/docs/encyclopedia/nexus-registry.mdx
+++ b/docs/encyclopedia/nexus-registry.mdx
@@ -21,12 +21,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
The [Nexus Registry](/glossary#nexus-registry) is used to view and manage [Nexus Endpoints](/nexus/endpoints).
Adding a Nexus Endpoint to the Nexus Registry deploys the Endpoint, so it is available at runtime to serve Nexus requests.
diff --git a/docs/encyclopedia/nexus-security.mdx b/docs/encyclopedia/nexus-security.mdx
index 7a8ca57fc8..0c37894cc3 100644
--- a/docs/encyclopedia/nexus-security.mdx
+++ b/docs/encyclopedia/nexus-security.mdx
@@ -19,12 +19,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
Nexus supports restricting access to Nexus Endpoints.
Temporal Cloud has built-in Endpoint access controls and provides secure Nexus connectivity across Namespaces.
For self-hosted deployments you can implement custom Authorizers.
diff --git a/docs/encyclopedia/nexus-services.mdx b/docs/encyclopedia/nexus-services.mdx
index be07ffa8bf..24cd30dc57 100644
--- a/docs/encyclopedia/nexus-services.mdx
+++ b/docs/encyclopedia/nexus-services.mdx
@@ -19,12 +19,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
[Nexus Services](/glossary#nexus-service) are named collections of arbitrary-duration [Nexus Operations](/nexus/operations) that provide a contract suitable for sharing across team boundaries.
+The following Nexus features are in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
+
- [Attaching multiple Nexus callers to a handler Workflow](/nexus/operations#attaching-multiple-nexus-callers)
diff --git a/docs/evaluate/development-production-features/temporal-nexus.mdx b/docs/evaluate/development-production-features/temporal-nexus.mdx
index 9261274fe5..70f53c45b1 100644
--- a/docs/evaluate/development-production-features/temporal-nexus.mdx
+++ b/docs/evaluate/development-production-features/temporal-nexus.mdx
@@ -34,12 +34,6 @@ keywords:
import { RelatedReadContainer, RelatedReadItem } from '@site/src/components';
import ThemedImage from '@theme/ThemedImage';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability) for [Temporal Cloud](/cloud/nexus) and [self-hosted deployments](/production-deployment/self-hosted-guide/nexus).
-
-:::
-
## Connect Temporal Applications
Nexus allows you to connect Temporal Applications across (and within) isolated Namespaces.
diff --git a/docs/evaluate/temporal-cloud/pricing.mdx b/docs/evaluate/temporal-cloud/pricing.mdx
index b1bba8c198..1d19451e75 100644
--- a/docs/evaluate/temporal-cloud/pricing.mdx
+++ b/docs/evaluate/temporal-cloud/pricing.mdx
@@ -21,7 +21,7 @@ tags:
- Support
---
-import { DiscoverableDisclosure } from '@site/src/components';
+import { DiscoverableDisclosure, ReleaseStage } from '@site/src/components';
Temporal Cloud is a consumption-based service.
You pay only for what you use.
@@ -44,7 +44,6 @@ Your total invoice each calendar month is the combination of Temporal Cloud cons
**How plans work**
-
Each Temporal Cloud account includes a plan with Support, Actions, Active Storage, Retained Storage and platform features.
Base allocations help you get started with the Temporal platform, so you can better estimate costs.
@@ -269,11 +268,7 @@ On-Demand capacity is automatically adjusted based on past usage.
Provisioned Capacity modes lets you define the capacity that is needed by your Workflow and is useful to handle traffic outside of the standard on-demand limits.
See details on how capacity is set and the associated limits at [Capacity Modes](/cloud/capacity-modes).
-:::tip Support, stability, and dependency info
-
-Provisioned Capacity is currently in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
**How does pricing for Capacity Modes work?**
@@ -309,8 +304,6 @@ Temporal’s approach to pricing Provisioned Capacity aligns with our goal to on
The minimum hourly allocation will have no impact on your price if you utilize the requested capacity above your default by 20% or more, and will only incur an additional charge if the requested capacity is not used.
To avoid being charged for provisioned capacity it is advised to "return" capacity to the pool and switch back to the On-demand mode when usage is stable.
-
-
### High Availability feature pricing {#high-availability-features}
**How does the pricing for High Availability (HA) features work?**
diff --git a/docs/evaluate/temporal-cloud/service-availability.mdx b/docs/evaluate/temporal-cloud/service-availability.mdx
index ee69dd3676..579a24e4a2 100644
--- a/docs/evaluate/temporal-cloud/service-availability.mdx
+++ b/docs/evaluate/temporal-cloud/service-availability.mdx
@@ -14,6 +14,8 @@ tags:
- Temporal Cloud
---
+import { ReleaseStage } from '@site/src/components';
+
The operating envelope of Temporal Cloud includes throughput, latency, and limits.
Service regions are listed on [this page](/cloud/regions).
If you need more details, [contact us](https://pages.temporal.io/contact-us).
@@ -27,11 +29,7 @@ Temporal offers two different modes for adjusting capacity: On-Demand Capacity o
With On-Demand Capacity, Namespace capacity is increased automatically along with usage.
With Provisioned Capacity, you can control your capacity limits by requesting Temporal Resource Units (TRUs).
-:::tip Support, stability, and dependency info
-
-Provisioned Capacity is currently in [Public Preview](/evaluate/development-production-features/release-stages#public-preview).
-
-:::
+
## Latency Service Level Objective (SLO) {#latency}
diff --git a/docs/production-deployment/self-hosted-guide/temporal-nexus.mdx b/docs/production-deployment/self-hosted-guide/temporal-nexus.mdx
index 9d4b23f935..022426e646 100644
--- a/docs/production-deployment/self-hosted-guide/temporal-nexus.mdx
+++ b/docs/production-deployment/self-hosted-guide/temporal-nexus.mdx
@@ -13,13 +13,6 @@ tags:
import { CaptionedImage } from '@site/src/components';
-:::tip SUPPORT, STABILITY, and DEPENDENCY INFO
-
-Temporal Nexus is now [Generally Available](/evaluate/development-production-features/release-stages#general-availability).
-Learn why you should use Nexus in the [evaluation guide](/evaluate/nexus).
-
-:::
-
[Temporal Nexus](/nexus) allows you to reliably connect Temporal Applications.
It was designed with Durable Execution in mind and enables each team to have their own Namespace for improved modularity, security, debugging, and fault isolation.
diff --git a/src/components/index.js b/src/components/index.js
index 07b4ad9ef6..a0f6296621 100644
--- a/src/components/index.js
+++ b/src/components/index.js
@@ -17,6 +17,7 @@ export { default as ZoomingImage } from './images/ZoomingImage';
// Information components
export { default as DiscoverableDisclosure } from './info/DiscoverableDisclosure';
+export { default as ReleaseStage } from './info/ReleaseStage';
export { default as ToolTipTerm } from './info/ToolTipTerm';
export { RelatedReadContainer, RelatedReadItem } from './info/RelatedRead';
export { default as RelatedReadList } from './info/RelatedReadList';
diff --git a/src/components/info/ReleaseStage.js b/src/components/info/ReleaseStage.js
new file mode 100644
index 0000000000..3ac3f6ae7e
--- /dev/null
+++ b/src/components/info/ReleaseStage.js
@@ -0,0 +1,56 @@
+import React from "react";
+import Admonition from "@theme/Admonition";
+import Link from "@docusaurus/Link";
+
+const STAGE_CONFIG = {
+ "pre-release": {
+ label: "Pre-release",
+ anchor: "#pre-release",
+ },
+ "public-preview": {
+ label: "Public Preview",
+ anchor: "#public-preview",
+ },
+};
+
+const RELEASE_STAGES_PATH = "/evaluate/development-production-features/release-stages";
+
+/**
+ * ReleaseStage - Standardized release phase callout.
+ *
+ * Usage:
+ *
+ *
+ *
+ * All APIs are experimental and may be subject to backwards-incompatible changes.
+ *
+ *
+ * Custom content with multiple stages or non-standard text.
+ *
+ */
+export default function ReleaseStage({ stage, feature, verb = "is", children }) {
+ const config = stage ? STAGE_CONFIG[stage] : null;
+
+ if (config && feature) {
+ return (
+
+