Skip to content

MCP Tools in Drills: Drill Start and Drill End - #3353

Open
dynamicdhx wants to merge 7 commits into
mainfrom
users/dhruvbharuka/drillstartanddrillend
Open

MCP Tools in Drills: Drill Start and Drill End#3353
dynamicdhx wants to merge 7 commits into
mainfrom
users/dhruvbharuka/drillstartanddrillend

Merge remote-tracking branch 'upstream/main' into users/dhruvbharuka/…

c673f99
Select commit
Loading
Failed to load commit list.
Azure Pipelines / mcp - pullrequest failed Aug 28, 2026 in 16m 26s

Build #20260828.3 had test failures

Details

Tests

  • Failed: 48 (1.46%)
  • Passed: 3,240 (98.54%)
  • Other: 0 (0.00%)
  • Total: 3,288

Annotations

Check failure on line 1637 in Build log

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Build log #L1637

Command failed to execute (00:02:40.7679580): dotnet test  --results-directory '/Users/runner/work/1/a/testResults' --report-xunit-trx --output 'Detailed' 

Check failure on line 1640 in Build log

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Build log #L1640

PowerShell exited with code '1'.

Check failure on line 1790 in Build log

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Build log #L1790

Command failed to execute (00:01:14.6915748): dotnet test --coverlet --coverlet-output-format cobertura --results-directory '/mnt/vss/_work/1/a/testResults' --report-xunit-trx --output 'Detailed' 

Check failure on line 1793 in Build log

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Build log #L1793

PowerShell exited with code '1'.

Check failure on line 1 in Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_delete_drill

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_delete_drill

Property 'success' not found. Full element: '{\"message\":\"The requested operation requires an element of type \\u0027Object\\u0027, but the target element has type \\u0027Null\\u0027.\",\"stackTrace\":\"   at System.Text.Json.ThrowHelper.ThrowJsonElementWrongTypeException(JsonTokenType expectedType, JsonTokenType actualType)\\n   at System.Text.Json.JsonDocument.TryGetNamedPropertyValue(Int32 index, ReadOnlySpan\\u00601 propertyName, JsonElement\\u0026 value)\\n   at Azure.Core.NextLinkOperationImplementation.IsFinalState(Response response, HeaderSource headerSource, Nullable\\u00601\\u0026 failureState, String\\u0026 resourceLocation)\\n   at Azure.Core.NextLinkOperationImplementation.Create(HttpPipeline pipeline, RequestMethod requestMethod, Uri startRequestUri, Response response, OperationFinalStateVia finalStateVia, Boolean skipApiVersionOverride, String apiVersionOverrideValue)\\n   at Azure.ResourceManager.ResilienceManagement.ResilienceManagementArmOperation..ctor(ClientDiagnostics clientDiagnostics, HttpPipeline pipeline, Request request, Response response, OperationFinalStateVia finalStateVia, Boolean skipApiVersionOverride, String apiVersionOverrideValue)\\n   at Azure.ResourceManager.ResilienceManagement.ResilienceManagementDrillResource.DeleteAsync(WaitUntil waitUntil, CancellationToken cancellationToken)\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.DeleteDrillAsync(String serviceGroup, String drill, String tenant, RetryPolicyOptions retryPolicy, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 1506\\n   at Azure.Mcp.Tools.ResilienceManagement.Commands.Drills.DrillDeleteCommand.ExecuteAsync(CommandContext context, DrillDeleteOptions options, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/Drills/DrillDeleteCommand.cs:line 53\",\"type\":\"InvalidOperationException\"}'
Raw output
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(JsonElement element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 58
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(Nullable`1 element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 53
   at Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_delete_drill() in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/ResilienceManagementCommandTests.cs:line 236
--- End of stack trace from previous location ---

Check failure on line 1 in Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_validate_recovery_plan_for_failover

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_validate_recovery_plan_for_failover

Property 'operationId' not found. Full element: '{\"message\":\"Service request failed.\\nStatus: 202 (Accepted)\\n\\nService request succeeded. Response content and headers are not included to avoid logging sensitive data.\\n\",\"stackTrace\":\"   at Azure.Core.OperationInternal\\u00601.GetResponseFromState(OperationState\\u00601 state)\\n   at Azure.Core.OperationInternal\\u00601.UpdateStatusAsync(Boolean async, CancellationToken cancellationToken)\\n   at Azure.Core.OperationInternalBase.UpdateStatusAsync(CancellationToken cancellationToken)\\n   at Azure.Mcp.Core.Services.Azure.BaseAzureService.WaitForLroCompletionInternalAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/core/Azure.Mcp.Core/src/Services/Azure/BaseAzureService.cs:line 180\\n   at Azure.Mcp.Core.Services.Azure.BaseAzureService.WaitForLroCompletionAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/core/Azure.Mcp.Core/src/Services/Azure/BaseAzureService.cs:line 168\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.WaitForRecoveryPlanLroCompletionAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 768\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.ValidateRecoveryPlanForFailoverCoreAsync(String serviceGroup, String recoveryPlan, IReadOnlyList\\u00601 sourceLocations, IReadOnlyList\\u00601 selectedResourceIds, String userConsent, String tenant, RetryPolicyOptions retryPolicy, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 560\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.ExecuteWithTimeoutAsync[T](Func\\u00602 operation, String operationDescription, TimeSpan timeout, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 755\\n   at Azure.Mcp.Tools.ResilienceManagement.Commands.Recovery.Plans.RecoveryPlanValidateForFailoverCommand.ExecuteAsync(CommandContext context, RecoveryPlanValidateForFailoverOptions options, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/Recovery/Plans/RecoveryPlanValidateForFailoverCommand.cs:line 74\",\"type\":\"RequestFailedException\"}'
Raw output
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(JsonElement element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 58
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(Nullable`1 element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 53
   at Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_validate_recovery_plan_for_failover() in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/ResilienceManagementCommandTests.cs:line 840
--- End of stack trace from previous location ---

Check failure on line 1 in Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_update_drill

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_update_drill

Property 'drill' not found. Full element: '{\"message\":\"The requested operation requires an element of type \\u0027Object\\u0027, but the target element has type \\u0027Null\\u0027.\",\"stackTrace\":\"   at System.Text.Json.ThrowHelper.ThrowJsonElementWrongTypeException(JsonTokenType expectedType, JsonTokenType actualType)\\n   at System.Text.Json.JsonDocument.TryGetNamedPropertyValue(Int32 index, ReadOnlySpan\\u00601 propertyName, JsonElement\\u0026 value)\\n   at Azure.Core.NextLinkOperationImplementation.IsFinalState(Response response, HeaderSource headerSource, Nullable\\u00601\\u0026 failureState, String\\u0026 resourceLocation)\\n   at Azure.Core.NextLinkOperationImplementation.Create(HttpPipeline pipeline, RequestMethod requestMethod, Uri startRequestUri, Response response, OperationFinalStateVia finalStateVia, Boolean skipApiVersionOverride, String apiVersionOverrideValue)\\n   at Azure.ResourceManager.ResilienceManagement.ResilienceManagementArmOperation..ctor(ClientDiagnostics clientDiagnostics, HttpPipeline pipeline, Request request, Response response, OperationFinalStateVia finalStateVia, Boolean skipApiVersionOverride, String apiVersionOverrideValue)\\n   at Azure.ResourceManager.ResilienceManagement.ResilienceManagementDrillResource.UpdateAsync(WaitUntil waitUntil, ResilienceManagementDrillPatch patch, CancellationToken cancellationToken)\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.UpdateDrillAsync(String serviceGroup, String drill, String subscription, String region, Nullable\\u00601 rbacSetupMode, String recoveryPlan, String tenant, RetryPolicyOptions retryPolicy, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 1492\\n   at Azure.Mcp.Tools.ResilienceManagement.Commands.Drills.DrillUpdateCommand.ExecuteAsync(CommandContext context, DrillUpdateOptions options, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/Drills/DrillUpdateCommand.cs:line 84\",\"type\":\"InvalidOperationException\"}'
Raw output
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(JsonElement element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 58
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(Nullable`1 element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 53
   at Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_update_drill() in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/ResilienceManagementCommandTests.cs:line 183
--- End of stack trace from previous location ---

Check failure on line 1 in Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_check_recovery_plan_readiness

See this annotation in the file changed.

@azure-pipelines azure-pipelines / mcp - pullrequest

Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_check_recovery_plan_readiness

Property 'operationId' not found. Full element: '{\"message\":\"Service request failed.\\nStatus: 202 (Accepted)\\n\\nService request succeeded. Response content and headers are not included to avoid logging sensitive data.\\n\",\"stackTrace\":\"   at Azure.Core.OperationInternal\\u00601.GetResponseFromState(OperationState\\u00601 state)\\n   at Azure.Core.OperationInternal\\u00601.UpdateStatusAsync(Boolean async, CancellationToken cancellationToken)\\n   at Azure.Core.OperationInternalBase.UpdateStatusAsync(CancellationToken cancellationToken)\\n   at Azure.Core.OperationInternal.UpdateStatusAsync(Boolean async, CancellationToken cancellationToken)\\n   at Azure.Core.OperationInternalBase.UpdateStatusAsync(CancellationToken cancellationToken)\\n   at Azure.Mcp.Core.Services.Azure.BaseAzureService.WaitForLroCompletionInternalAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/core/Azure.Mcp.Core/src/Services/Azure/BaseAzureService.cs:line 180\\n   at Azure.Mcp.Core.Services.Azure.BaseAzureService.WaitForLroCompletionAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/core/Azure.Mcp.Core/src/Services/Azure/BaseAzureService.cs:line 168\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.WaitForRecoveryPlanLroCompletionAsync(Operation operation, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 768\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.CheckRecoveryPlanReadinessCoreAsync(String serviceGroup, String recoveryPlan, String tenant, RetryPolicyOptions retryPolicy, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 695\\n   at Azure.Mcp.Tools.ResilienceManagement.Services.ResilienceManagementService.ExecuteWithTimeoutAsync[T](Func\\u00602 operation, String operationDescription, TimeSpan timeout, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Services/ResilienceManagementService.cs:line 755\\n   at Azure.Mcp.Tools.ResilienceManagement.Commands.Recovery.Plans.RecoveryPlanCheckReadinessCommand.ExecuteAsync(CommandContext context, RecoveryPlanCheckReadinessOptions options, CancellationToken cancellationToken) in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/src/Commands/Recovery/Plans/RecoveryPlanCheckReadinessCommand.cs:line 42\",\"type\":\"RequestFailedException\"}'
Raw output
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(JsonElement element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 58
   at Microsoft.Mcp.Tests.TestExtensions.AssertProperty(Nullable`1 element, String propertyName) in /mnt/vss/_work/1/s/core/Microsoft.Mcp.Core/tests/Microsoft.Mcp.Tests/TestExtensions.cs:line 53
   at Azure.Mcp.Tools.ResilienceManagement.Tests.ResilienceManagementCommandTests.Should_check_recovery_plan_readiness() in /mnt/vss/_work/1/s/tools/Azure.Mcp.Tools.ResilienceManagement/tests/Azure.Mcp.Tools.ResilienceManagement.Tests/ResilienceManagementCommandTests.cs:line 587
--- End of stack trace from previous location ---