test(integration): pin simple-mcp-server to legacy MCP path until #4163 is fixed - #4164
Merged
Conversation
The progressive-MCP rollout (#3994) regressed non-interactive MCP tool visibility on the first `--prompt` request — the model never sees the configured MCP tool and answers from its own knowledge, so the test's `waitForToolCall('mcp__addition-server__add')` assertion times out on all three retries. Reproduced locally: 167s 3/3-fail without the rollback flag, 22s pass with it. Set `QWEN_CODE_LEGACY_MCP_BLOCKING=1` in the test's `beforeAll` so the spawned CLI uses the pre-#3994 synchronous discovery path. Scoped to this single test rather than the workflow env so other integration tests keep exercising the new progressive-MCP code path. Temporary workaround. Remove once #4163 is fixed.
Contributor
📋 Review SummaryThis PR introduces a targeted workaround for a flaky integration test ( 🔍 General Feedback
🎯 Specific Feedback🔵 Low
✅ Highlights
|
Contributor
Code Coverage Summary
CLI Package - Full Text ReportCore Package - Full Text ReportFor detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run. |
chiga0
approved these changes
May 15, 2026
TaimoorSiddiquiOfficial
pushed a commit
to TaimoorSiddiquiOfficial/HopCode
that referenced
this pull request
May 15, 2026
…QwenLM#4164) The progressive-MCP rollout (QwenLM#3994) regressed non-interactive MCP tool visibility on the first `--prompt` request — the model never sees the configured MCP tool and answers from its own knowledge, so the test's `waitForToolCall('mcp__addition-server__add')` assertion times out on all three retries. Reproduced locally: 167s 3/3-fail without the rollback flag, 22s pass with it. Set `QWEN_CODE_LEGACY_MCP_BLOCKING=1` in the test's `beforeAll` so the spawned CLI uses the pre-QwenLM#3994 synchronous discovery path. Scoped to this single test rather than the workflow env so other integration tests keep exercising the new progressive-MCP code path. Temporary workaround. Remove once QwenLM#4163 is fixed. (cherry picked from commit fa6f664)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
QWEN_CODE_LEGACY_MCP_BLOCKING=1in thebeforeAllofintegration-tests/cli/simple-mcp-server.test.tsso the spawned CLI uses the pre-feat(perf): progressive MCP availability — MCP no longer blocks first input #3994 synchronous MCP discovery path for just this one test.d343e2c15) landed, this test fails all three retries on every scheduledReleaserun (no-sandbox + docker). The model never sees the configured MCPaddtool on the first--promptrequest and answers15from its own knowledge. Reported as MCP tools silently unavailable in headless --prompt mode after progressive-MCP rollout #4163.Validation
Commands run:
Prompts / inputs used: the test's existing
'add 5 and 10, use tool if you can.'— unchanged.Expected result: with the workaround in place,
simple-mcp-server > should add two numberspasses on the first attempt.Observed result:
main(no patch)Expected to find an add tool call: expected false to be truthyQuickest reviewer verification path: build the bundle, run the integration test as above, observe a single-try pass in ~22s.
Scope / Risk
mcp_server_cyclic_schema.test.tsand the rest of the integration suite. The flag is process-local to the test's spawned CLI; no other tests or workflows are affected.Testing Matrix
Testing matrix notes:
QWEN_SANDBOX=false. Linux + Docker variants will run on the PR CI; the flag has identical semantics on every platform (it's read inConfig.initialize()regardless of host).Linked Issues / Bugs
Refs #4163 (do not close — this is a workaround, not the fix).