diff --git a/src/Libraries/Microsoft.Extensions.AI.Abstractions/Functions/AIFunctionFactory.cs b/src/Libraries/Microsoft.Extensions.AI.Abstractions/Functions/AIFunctionFactory.cs
index 7daa5a49340..f5a11ef42ee 100644
--- a/src/Libraries/Microsoft.Extensions.AI.Abstractions/Functions/AIFunctionFactory.cs
+++ b/src/Libraries/Microsoft.Extensions.AI.Abstractions/Functions/AIFunctionFactory.cs
@@ -48,30 +48,24 @@ public static partial class AIFunctionFactory
/// . There are a few exceptions to this:
///
/// -
- ///
- /// parameters are automatically bound to the passed into
- /// the invocation via 's parameter. The parameter is
- /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
- ///
+ /// parameters are automatically bound to the passed into
+ /// the invocation via 's parameter. The parameter is
+ /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
///
/// -
- ///
- /// By default, parameters are bound from the property
- /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
- /// is allowed to be ; otherwise,
- /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
- /// The handling of parameters can be overridden via .
- ///
+ /// By default, parameters are bound from the property
+ /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
+ /// is allowed to be ; otherwise,
+ /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
+ /// The handling of parameters can be overridden via .
///
/// -
- ///
- /// By default, parameters are bound directly to instance
- /// passed into and are not included in the JSON schema. If the
- /// instance passed to is , the implementation
- /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
- /// optional or not. The handling of parameters can be overridden via
- /// .
- ///
+ /// By default, parameters are bound directly to instance
+ /// passed into and are not included in the JSON schema. If the
+ /// instance passed to is , the implementation
+ /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
+ /// optional or not. The handling of parameters can be overridden via
+ /// .
///
///
/// All other parameter types are, by default, bound from the dictionary passed into
@@ -135,28 +129,22 @@ public static AIFunction Create(Delegate method, AIFunctionFactoryOptions? optio
/// . There are a few exceptions to this:
///
/// -
- ///
- /// parameters are automatically bound to the passed into
- /// the invocation via 's parameter. The parameter is
- /// not included in the generated JSON schema.
- ///
+ /// parameters are automatically bound to the passed into
+ /// the invocation via 's parameter. The parameter is
+ /// not included in the generated JSON schema.
///
/// -
- ///
- /// By default, parameters are bound from the property
- /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
- /// is allowed to be ; otherwise,
- /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
- ///
+ /// By default, parameters are bound from the property
+ /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
+ /// is allowed to be ; otherwise,
+ /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
///
/// -
- ///
- /// By default, parameters are bound directly to instance
- /// passed into and are not included in the JSON schema. If the
- /// instance passed to is , the implementation
- /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
- /// optional or not.
- ///
+ /// By default, parameters are bound directly to instance
+ /// passed into and are not included in the JSON schema. If the
+ /// instance passed to is , the implementation
+ /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
+ /// optional or not.
///
///
/// All other parameter types are bound from the dictionary passed into
@@ -218,30 +206,24 @@ public static AIFunction Create(Delegate method, string? name = null, string? de
/// . There are a few exceptions to this:
///
/// -
- ///
- /// parameters are automatically bound to the passed into
- /// the invocation via 's parameter. The parameter is
- /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
- ///
+ /// parameters are automatically bound to the passed into
+ /// the invocation via 's parameter. The parameter is
+ /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
///
/// -
- ///
- /// By default, parameters are bound from the property
- /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
- /// is allowed to be ; otherwise,
- /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
- /// The handling of parameters can be overridden via .
- ///
+ /// By default, parameters are bound from the property
+ /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
+ /// is allowed to be ; otherwise,
+ /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
+ /// The handling of parameters can be overridden via .
///
/// -
- ///
- /// By default, parameters are bound directly to instance
- /// passed into and are not included in the JSON schema. If the
- /// instance passed to is , the implementation
- /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
- /// optional or not. The handling of parameters can be overridden via
+ /// By default, parameters are bound directly to instance
+ /// passed into and are not included in the JSON schema. If the
+ /// instance passed to is , the implementation
+ /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
+ /// optional or not. The handling of parameters can be overridden via
/// .
- ///
///
///
/// All other parameter types are, by default, bound from the dictionary passed into
@@ -312,28 +294,22 @@ public static AIFunction Create(MethodInfo method, object? target, AIFunctionFac
/// . There are a few exceptions to this:
///
/// -
- ///
- /// parameters are automatically bound to the passed into
- /// the invocation via 's parameter. The parameter is
- /// not included in the generated JSON schema.
- ///
+ /// parameters are automatically bound to the passed into
+ /// the invocation via 's parameter. The parameter is
+ /// not included in the generated JSON schema.
///
/// -
- ///
- /// By default, parameters are bound from the property
- /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
- /// is allowed to be ; otherwise,
- /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
- ///
+ /// By default, parameters are bound from the property
+ /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
+ /// is allowed to be ; otherwise,
+ /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
///
/// -
- ///
- /// By default, parameters are bound directly to instance
- /// passed into and are not included in the JSON schema. If the
- /// instance passed to is , the implementation
- /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
- /// optional or not.
- ///
+ /// By default, parameters are bound directly to instance
+ /// passed into and are not included in the JSON schema. If the
+ /// instance passed to is , the implementation
+ /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
+ /// optional or not.
///
///
/// All other parameter types are bound from the dictionary passed into
@@ -408,30 +384,24 @@ public static AIFunction Create(MethodInfo method, object? target, string? name
/// . There are a few exceptions to this:
///
/// -
- ///
- /// parameters are automatically bound to the passed into
- /// the invocation via 's parameter. The parameter is
- /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
- ///
+ /// parameters are automatically bound to the passed into
+ /// the invocation via 's parameter. The parameter is
+ /// not included in the generated JSON schema. The behavior of parameters can't be overridden.
///
/// -
- ///
- /// By default, parameters are bound from the property
- /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
- /// is allowed to be ; otherwise,
- /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
- /// The handling of parameters can be overridden via .
- ///
+ /// By default, parameters are bound from the property
+ /// and are not included in the JSON schema. If the parameter is optional, such that a default value is provided,
+ /// is allowed to be ; otherwise,
+ /// must be non-, or else the invocation will fail with an exception due to the required nature of the parameter.
+ /// The handling of parameters can be overridden via .
///
/// -
- ///
- /// By default, parameters are bound directly to instance
- /// passed into and are not included in the JSON schema. If the
- /// instance passed to is , the implementation
- /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
- /// optional or not. The handling of parameters can be overridden via
- /// .
- ///
+ /// By default, parameters are bound directly to instance
+ /// passed into and are not included in the JSON schema. If the
+ /// instance passed to is , the implementation
+ /// manufactures an empty instance, such that parameters of type can always be satisfied, whether
+ /// optional or not. The handling of parameters can be overridden via
+ /// .
///
///
/// All other parameter types are, by default, bound from the dictionary passed into
diff --git a/src/Libraries/Microsoft.Extensions.AmbientMetadata.Build/BuildMetadata.cs b/src/Libraries/Microsoft.Extensions.AmbientMetadata.Build/BuildMetadata.cs
index 623a5fc7a96..1caef1d2e80 100644
--- a/src/Libraries/Microsoft.Extensions.AmbientMetadata.Build/BuildMetadata.cs
+++ b/src/Libraries/Microsoft.Extensions.AmbientMetadata.Build/BuildMetadata.cs
@@ -11,8 +11,8 @@ namespace Microsoft.Extensions.AmbientMetadata;
/// At startup time, the class properties will be initialized from the generated code.
/// Currently supported CI pipelines:
///
-/// - Azure DevOps
-/// - GitHub Actions
+/// - Azure DevOps
+/// - GitHub Actions
///
///
public class BuildMetadata
diff --git a/src/Libraries/Microsoft.Extensions.Resilience/Resilience/ResilienceServiceCollectionExtensions.cs b/src/Libraries/Microsoft.Extensions.Resilience/Resilience/ResilienceServiceCollectionExtensions.cs
index 96fa77e27f7..dc498ea6e71 100644
--- a/src/Libraries/Microsoft.Extensions.Resilience/Resilience/ResilienceServiceCollectionExtensions.cs
+++ b/src/Libraries/Microsoft.Extensions.Resilience/Resilience/ResilienceServiceCollectionExtensions.cs
@@ -25,12 +25,12 @@ public static class ResilienceServiceCollectionExtensions
///
/// This method adds additional dimensions on top of the default ones that are built-in to the Polly library. These include:
///
- /// -
- /// Exception enrichment based on .
- ///
- /// -
- /// Request metadata enrichment based on .
- ///
+ /// -
+ /// Exception enrichment based on .
+ ///
+ /// -
+ /// Request metadata enrichment based on .
+ ///
///
///
/// is .
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Enrichment/IEnrichmentTagCollector.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Enrichment/IEnrichmentTagCollector.cs
index 4ca73881168..17de6714279 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Enrichment/IEnrichmentTagCollector.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Enrichment/IEnrichmentTagCollector.cs
@@ -23,22 +23,22 @@ public interface IEnrichmentTagCollector
///
/// For log enrichment, is serialized as per the rules below:
///
- /// -
+ ///
-
/// Arrays
/// Recognized and serialized in a loop.
- ///
- /// -
+ ///
+ /// -
///
/// Recognized as IDictionary<string, object> and serialized in a loop.
- ///
- /// -
+ ///
+ /// -
///
/// Recognized and serialized after converting to .
- ///
- /// -
+ ///
+ /// -
/// All other primitive types
/// Converted to as is and serialized.
- ///
+ ///
///
/// For metric enrichment, is converted to format using method.
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Http/RequestMetadata.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Http/RequestMetadata.cs
index 60ae8569350..79daebaf0d4 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Http/RequestMetadata.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Http/RequestMetadata.cs
@@ -44,15 +44,15 @@ public RequestMetadata(string methodType, string requestRoute, string requestNam
///
/// Request Route is used for multiple use cases:
///
- /// -
- /// For outgoing request metrics, it is used as the request name dimension (if RequestName is not provided).
- ///
- /// -
- /// For Logs and traces, it is used to identify sensitive parameters from the path and redact them in the exported path, so sensitive data leakage can be avoided.
- /// If you are using redaction, the template should be accurate for the request else redaction won't be applied to sensitive parameters.
- /// For example, the template would look something like /v1/users/{userId}/chats/{chatId}/messages. For parameters to be redacted, the sensitive parameter names should match exactly as provided
- /// in configuration for outgoing tracing and outgoing logging autocollectors.
- ///
+ /// -
+ /// For outgoing request metrics, it is used as the request name dimension (if RequestName is not provided).
+ ///
+ /// -
+ /// For Logs and traces, it is used to identify sensitive parameters from the path and redact them in the exported path, so sensitive data leakage can be avoided.
+ /// If you are using redaction, the template should be accurate for the request else redaction won't be applied to sensitive parameters.
+ /// For example, the template would look something like /v1/users/{userId}/chats/{chatId}/messages. For parameters to be redacted, the sensitive parameter names should match exactly as provided
+ /// in configuration for outgoing tracing and outgoing logging autocollectors.
+ ///
///
///
public string RequestRoute { get; set; } = TelemetryConstants.Unknown;
@@ -63,18 +63,18 @@ public RequestMetadata(string methodType, string requestRoute, string requestNam
///
/// RequestName is used in the following manner by outgoing HTTP request auto collectors:
///
- /// -
- /// For outgoing request metrics: RequestName is used as the request name dimension if present. If not provided, the RequestRoute value is used instead.
- ///
- /// -
- /// For outgoing request traces: RequestName is used as the Display name for the activity. That is, when looking at the E2E trace flow, this name is used in the Tree view of traces.
- ///
- /// -
- /// If RequestName isn't provided, the RequestRoute value is used instead.
- ///
- /// -
- /// For outgoing request logs: When present, RequestName is added as an additional tag to logs.
- ///
+ /// -
+ /// For outgoing request metrics: RequestName is used as the request name dimension if present. If not provided, the RequestRoute value is used instead.
+ ///
+ /// -
+ /// For outgoing request traces: RequestName is used as the Display name for the activity. That is, when looking at the E2E trace flow, this name is used in the Tree view of traces.
+ ///
+ /// -
+ /// If RequestName isn't provided, the RequestRoute value is used instead.
+ ///
+ /// -
+ /// For outgoing request logs: When present, RequestName is added as an additional tag to logs.
+ ///
///
///
public string RequestName { get; set; } = TelemetryConstants.Unknown;
@@ -85,12 +85,12 @@ public RequestMetadata(string methodType, string requestRoute, string requestNam
///
/// DependencyName is used in the following manner by outgoing http request auto collectors:
///
- /// -
- /// For outgoing request metrics: This is added as dependency name dimension so metrics can be pivoted based on the dependency.
- ///
- /// -
- /// For outgoing request traces and logs: This is added as dependency name dimension for better diagnosability.
- ///
+ /// -
+ /// For outgoing request metrics: This is added as dependency name dimension so metrics can be pivoted based on the dependency.
+ ///
+ /// -
+ /// For outgoing request traces and logs: This is added as dependency name dimension for better diagnosability.
+ ///
///
///
public string DependencyName { get; set; } = TelemetryConstants.Unknown;
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Logging/TagProviderAttribute.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Logging/TagProviderAttribute.cs
index dba42dde1ad..213f5278a59 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Logging/TagProviderAttribute.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Logging/TagProviderAttribute.cs
@@ -33,14 +33,12 @@ public sealed class TagProviderAttribute : Attribute
/// The method referenced by this constructor should be non-generic, static, and public, and it should have two parameters:
///
/// -
- /// First parameter of type .
+ /// First parameter of type .
///
/// -
- ///
/// Second parameter of type T?, where T is the type of logging method parameter that you want to log.
- ///
///
- ///
+ ///
///
///
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttribute.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttribute.cs
index 43894559618..d889efabbab 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttribute.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttribute.cs
@@ -14,11 +14,11 @@ namespace Microsoft.Extensions.Diagnostics.Metrics;
///
/// This attribute is applied to a method that has the following constraints:
///
-/// - Must be a partial method.
-/// - Must return metricName as the type. A class with that name will be generated.
-/// - Must not be generic.
-/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
-/// - Must have all the keys provided in staticTagNames as string type parameters.
+/// - Must be a partial method.
+/// - Must return metricName as the type. A class with that name will be generated.
+/// - Must not be generic.
+/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
+/// - Must have all the keys provided in staticTagNames as string type parameters.
///
///
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttributeT.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttributeT.cs
index 91426ac71b2..81dd0323cbd 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttributeT.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/CounterAttributeT.cs
@@ -20,11 +20,11 @@ namespace Microsoft.Extensions.Diagnostics.Metrics;
///
/// This attribute is applied to a method that has the following constraints:
///
-/// - Must be a partial method.
-/// - Must return metricName as the type. A class with that name will be generated.
-/// - Must not be generic.
-/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
-/// - Must have all the keys provided in staticTags as string type parameters.
+/// - Must be a partial method.
+/// - Must return metricName as the type. A class with that name will be generated.
+/// - Must not be generic.
+/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
+/// - Must have all the keys provided in staticTags as string type parameters.
///
///
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/GaugeAttribute.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/GaugeAttribute.cs
index e26375eda90..5bd5451fad6 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/GaugeAttribute.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/GaugeAttribute.cs
@@ -14,11 +14,11 @@ namespace Microsoft.Extensions.Diagnostics.Metrics;
///
/// This attribute is applied to a method that has the following constraints:
///
-/// - Must be a partial method.
-/// - Must return metricName as the type. A class with that name will be generated.
-/// - Must not be generic.
-/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
-/// - Must have all the keys provided in staticTags as string type parameters.
+/// - Must be a partial method.
+/// - Must return metricName as the type. A class with that name will be generated.
+/// - Must not be generic.
+/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
+/// - Must have all the keys provided in staticTags as string type parameters.
///
///
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttribute.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttribute.cs
index 43f7b914051..5bfe60b24ce 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttribute.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttribute.cs
@@ -14,11 +14,11 @@ namespace Microsoft.Extensions.Diagnostics.Metrics;
///
/// This attribute is applied to a method that has the following constraints:
///
-/// - Must be a partial method.
-/// - Must return metricName as the type. A class with that name will be generated.
-/// - Must not be generic.
-/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
-/// - Must have all the keys provided in staticTags as string type parameters.
+/// - Must be a partial method.
+/// - Must return metricName as the type. A class with that name will be generated.
+/// - Must not be generic.
+/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
+/// - Must have all the keys provided in staticTags as string type parameters.
///
///
///
diff --git a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttributeT.cs b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttributeT.cs
index afdd9a30828..56b55fdfe79 100644
--- a/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttributeT.cs
+++ b/src/Libraries/Microsoft.Extensions.Telemetry.Abstractions/Metrics/HistogramAttributeT.cs
@@ -20,11 +20,11 @@ namespace Microsoft.Extensions.Diagnostics.Metrics;
///
/// This attribute is applied to a method that has the following constraints:
///
-/// - Must be a partial method.
-/// - Must return metricName as the type. A class with that name will be generated.
-/// - Must not be generic.
-/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
-/// - Must have all the keys provided in staticTags as string type parameters.
+/// - Must be a partial method.
+/// - Must return metricName as the type. A class with that name will be generated.
+/// - Must not be generic.
+/// - Must have System.Diagnostics.Metrics.Meter as first parameter.
+/// - Must have all the keys provided in staticTags as string type parameters.
///
///
///