Skip to content

Conversation

@hallipr
Copy link
Member

@hallipr hallipr commented Jan 13, 2026

What does this PR do?

Managed Lustre recorded tests were talking a long time because they were polling over recorded "InProgress" responses. This script reduces consecutive InProgress responses and shortens the test time from 15 minutes to <1 monut

Pre-merge Checklist

  • Required for All PRs
    • Read contribution guidelines
    • PR title clearly describes the change
    • Commit history is clean with descriptive messages (cleanup guide)
    • Added comprehensive tests for new/modified functionality
    • Updated servers/Azure.Mcp.Server/CHANGELOG.md and/or servers/Fabric.Mcp.Server/CHANGELOG.md for product changes (features, bug fixes, UI/UX, updated dependencies)
  • For MCP tool changes:
    • One tool per PR: This PR adds or modifies only one MCP tool for faster review cycles
    • Updated servers/Azure.Mcp.Server/README.md and/or servers/Fabric.Mcp.Server/README.md documentation
    • Validate README.md changes using script at eng/scripts/Process-PackageReadMe.ps1. See Package README
    • Updated command list in /servers/Azure.Mcp.Server/docs/azmcp-commands.md and/or /docs/fabric-commands.md
    • Run .\eng\scripts\Update-AzCommandsMetadata.ps1 to update tool metadata in azmcp-commands.md (required for CI)
    • For new or modified tool descriptions, ran ToolDescriptionEvaluator and obtained a score of 0.4 or more and a top 3 ranking for all related test prompts
    • For tools with new names, including new tools or renamed tools, update consolidated-tools.json
    • For new tools associated with Azure services or publicly available tools/APIs/products, add URL to documentation in the PR description
  • Extra steps for Azure MCP Server tool changes:
    • Updated test prompts in /servers/Azure.Mcp.Server/docs/e2eTestPrompts.md
    • 👉 For Community (non-Microsoft team member) PRs:
      • Security review: Reviewed code for security vulnerabilities, malicious code, or suspicious activities before running tests (crypto mining, spam, data exfiltration, etc.)
      • Manual tests run: added comment /azp run mcp - pullrequest - live to run Live Test Pipeline

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a PowerShell script to optimize Managed Lustre recorded test performance by removing consecutive "InProgress" polling responses, reducing test execution time from 15 minutes to under 1 minute.

Changes:

  • Added Fix-TestRecording.ps1 script to process and optimize test recordings by deduplicating consecutive InProgress status responses
  • Updated assets.json Tag to reflect the new recording pushed to the assets repository

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.

File Description
tools/Azure.Mcp.Tools.ManagedLustre/tests/Fix-TestRecording.ps1 New PowerShell script that locates test recordings, removes consecutive InProgress responses, and pushes the optimized recording back to the assets repository
tools/Azure.Mcp.Tools.ManagedLustre/tests/Azure.Mcp.Tools.ManagedLustre.LiveTests/assets.json Updated Tag value to reference the new optimized recording

@hallipr hallipr changed the title Add script to remove consecutive InProgress responses from Lustre test Reduce Managed Lustre replay test time Jan 13, 2026
Copy link
Contributor

Copilot AI commented Jan 13, 2026

@hallipr I've opened a new pull request, #1487, to work on those changes. Once the pull request is ready, I'll request review from you.

hallipr and others added 2 commits January 13, 2026 09:10
…ng.ps1 (#1487)

* Initial plan

* Add documentation and remove invisible characters from Fix-TestRecording.ps1

Co-authored-by: hallipr <[email protected]>

* Fix documentation to remove non-existent TestName parameter

Co-authored-by: hallipr <[email protected]>

* Apply suggestion from @hallipr

* Update Fix-TestRecording.ps1 to remove PSEdition requirement

Removed requirement for PSEdition Core in the script.

---------

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: hallipr <[email protected]>
Co-authored-by: Patrick Hallisey <[email protected]>
@hallipr hallipr changed the title Reduce Managed Lustre replay test time Reduce Managed Lustre playback test time Jan 13, 2026
@hallipr
Copy link
Member Author

hallipr commented Jan 13, 2026

@copilot, from the assets.json change, can you generate a github tag comparison link so I can review the asset changes?

Copy link
Contributor

Copilot AI commented Jan 13, 2026

@hallipr I've opened a new pull request, #1497, to work on those changes. Once the pull request is ready, I'll request review from you.

@hallipr
Copy link
Member Author

hallipr commented Jan 13, 2026

The asset diff is:
Azure/azure-sdk-assets@074e7c3...bb4bc75

Copy link
Contributor

@vcolin7 vcolin7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While I like that we now have a utility like this to remove some bloat from our recordings, I think we should still consider adding a way to customize the polling interval for clients we use during playback with Test Proxy like @alzimmermsft mentions in this issue. /cc @scbedd

@github-project-automation github-project-automation bot moved this from Untriaged to In Progress in Azure MCP Server Jan 14, 2026
Copy link
Member

@weshaggard weshaggard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm ok with this bandaid for now. I would prefer this to be fixed in the test code in someway though instead of a post-recording process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

tools-managedlustre Azure Managed Lustre

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

macos_x64 CI test pipeline times out after 30 minutes (fails CI)

5 participants