diff --git a/src/frontend/config/sidebar/reference.topics.ts b/src/frontend/config/sidebar/reference.topics.ts
index 8233c13ae..bc05f97d8 100644
--- a/src/frontend/config/sidebar/reference.topics.ts
+++ b/src/frontend/config/sidebar/reference.topics.ts
@@ -702,6 +702,10 @@ export const referenceTopics: StarlightSidebarTopicsUserConfig[number] = {
label: 'ASPIREUSERSECRETS001',
link: '/diagnostics/aspireusersecrets001',
},
+ {
+ label: 'ASPIREWATCH001',
+ link: '/diagnostics/aspirewatch001',
+ },
],
},
{
diff --git a/src/frontend/src/content/docs/diagnostics/aspirewatch001.mdx b/src/frontend/src/content/docs/diagnostics/aspirewatch001.mdx
new file mode 100644
index 000000000..b7c2c7bc1
--- /dev/null
+++ b/src/frontend/src/content/docs/diagnostics/aspirewatch001.mdx
@@ -0,0 +1,85 @@
+---
+title: Compiler Warning ASPIREWATCH001
+seoTitle: "ASPIREWATCH001: Experimental run mode configuration APIs"
+description: Learn what causes the Aspire compiler warning ASPIREWATCH001 and how to fix it so your AppHost builds cleanly.
+---
+
+import { Badge } from '@astrojs/starlight/components';
+
+
+
+> Run mode configuration types and members are for evaluation purposes only and are subject to change or removal in future updates. Suppress this diagnostic to proceed.
+
+This diagnostic warning is reported when using experimental run mode configuration APIs in Aspire, including:
+
+- `RunConfiguration` class
+- `DistributedApplicationExecutionContext.RunConfiguration` property
+- `DistributedApplicationExecutionContextOptions.RunConfiguration` property
+
+These APIs let integrations vary how their resources are launched based on the kind of run being performed, without changing the core hosting behavior. In publish mode, every property on `RunConfiguration` holds its default value.
+
+## Example
+
+The following code generates `ASPIREWATCH001`:
+
+```csharp title="Reading run mode configuration"
+var builder = DistributedApplication.CreateBuilder(args);
+
+if (builder.ExecutionContext.IsRunMode)
+{
+ var runConfiguration = builder.ExecutionContext.RunConfiguration;
+
+ if (runConfiguration.WatchEnabled)
+ {
+ // Launch resources so source changes are hot-reloaded.
+ }
+}
+
+builder.Build().Run();
+```
+
+## Understanding run mode configuration
+
+`RunConfiguration` holds settings that only apply when the AppHost is running in [run mode](/app-host/resource-lifetimes/) (as opposed to publish mode). Integrations use it to vary how their resources are launched without changing the core hosting behavior.
+
+### `WatchEnabled`
+
+Indicates that resources should start in watch mode if able. Integrations that support watch can launch their resources so that source changes are hot-reloaded. This is a hint: integrations that cannot watch their resources should start them in the normal fashion.
+
+## To suppress this warning
+
+Suppress the warning with either of the following methods:
+
+- Set the severity of the rule in the _.editorconfig_ file.
+
+ ```ini title=".editorconfig"
+ [*.{cs,vb}]
+ dotnet_diagnostic.ASPIREWATCH001.severity = none
+ ```
+
+ For more information about editor config files, see [Configuration files for code analysis rules](/diagnostics/overview/#suppress-in-the-editorconfig-file).
+
+- Add the following `PropertyGroup` to your project file:
+
+ ```xml title="C# project file"
+
+ $(NoWarn);ASPIREWATCH001
+
+ ```
+
+- Suppress in code with the `#pragma warning disable ASPIREWATCH001` directive:
+
+ ```csharp title="Suppressing the warning"
+ var builder = DistributedApplication.CreateBuilder(args);
+
+ #pragma warning disable ASPIREWATCH001
+ var runConfiguration = builder.ExecutionContext.RunConfiguration;
+ #pragma warning restore ASPIREWATCH001
+
+ builder.Build().Run();
+ ```
diff --git a/src/frontend/src/content/docs/diagnostics/overview.mdx b/src/frontend/src/content/docs/diagnostics/overview.mdx
index d519c629e..f22708a22 100644
--- a/src/frontend/src/content/docs/diagnostics/overview.mdx
+++ b/src/frontend/src/content/docs/diagnostics/overview.mdx
@@ -59,6 +59,7 @@ The following table lists the possible MSBuild and analyzer warnings and errors
| [ASPIREPROXYENDPOINTS001](/diagnostics/aspireproxyendpoints001/) | (Experimental) Error | ProxyEndpoint members are for evaluation purposes only and are subject to change or removal in future updates. |
| [ASPIREPUBLISHERS001](/diagnostics/aspirepublishers001/) | Error | Publishers are for evaluation purposes only and are subject to change or removal in future updates. |
| [ASPIREUSERSECRETS001](/diagnostics/aspireusersecrets001/) | (Experimental) Warning | Type is for evaluation purposes only and is subject to change or removal in future updates. |
+| [ASPIREWATCH001](/diagnostics/aspirewatch001/) | (Experimental) Warning | Run mode configuration types and members are for evaluation purposes only and are subject to change or removal in future updates. |
## Suppress diagnostic