chore(vscode): run development ACP CLI from source#4283
Conversation
📋 Review SummaryThis PR enables VS Code extension development mode to run the ACP CLI from source ( 🔍 General Feedback
🎯 Specific Feedback🟢 Medium
🔵 Low
✅ Highlights
|
00d0efa to
7cafd12
Compare
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. |
wenshao
left a comment
There was a problem hiding this comment.
[Suggestion] Missing test coverage: resolveQwenCliEntryPath has no test for the branch where extensionMode === Development but dev.js does not exist on disk. The existing tests cover the happy path (dev.js present) and non-development mode, but the fallback-to-bundled-CLI path is untested.
— DeepSeek/deepseek-v4-pro via Qwen Code /review
| } | ||
|
|
||
| return vscode.Uri.joinPath(extensionUri, 'dist', 'qwen-cli', 'cli.js').fsPath; | ||
| } |
There was a problem hiding this comment.
[Suggestion] resolveQwenCliEntryPath silently falls back to the bundled CLI when dev.js is not found even in ExtensionMode.Development. No log or warning is emitted — a developer would have no way to know their source changes aren't being picked up.
| } | |
| // If dev.js was not found, fall back to the bundled CLI. | |
| console.warn( | |
| '[WebViewProvider] dev.js not found at ' + | |
| path.resolve(extensionUri.fsPath, '..', '..', 'scripts', 'dev.js') + | |
| '; falling back to bundled CLI', | |
| ); | |
| return vscode.Uri.joinPath(extensionUri, 'dist', 'qwen-cli', 'cli.js').fsPath; |
— DeepSeek/deepseek-v4-pro via Qwen Code /review
wenshao
left a comment
There was a problem hiding this comment.
No issues found. LGTM! ✅ — qwen-latest-series-invite-beta-v28 via Qwen Code /review
Local validation reportVerified head What I readTwo functional edits:
Build & static checks
The Unit tests
Logic-branch coverage (inline harness, 5 cases)Beyond the 2 tests shipped in the PR, I exercised every branch of
The branch matrix is complete and the safety property holds: production-mode behavior is byte-identical to before the PR, and dev-mode degrades gracefully to the bundled CLI if tmux smoke —
|
Summary
scripts/dev.jsentrypoint, while packaged builds continue to use the bundled CLI.dist/qwen-cli/cli.js.Validation
node scripts/dev.js --versionreported the dev CLI version.packages/vscode-ide-companionwith F5, open the Qwen Code panel in the Extension Development Host, then confirm the ACP process uses the repositoryscripts/dev.jspath in the extension logs.devversion string from the source dev entrypoint.Scope / Risk
scripts/dev.js; if unavailable, the code falls back to the bundled CLI path.Testing Matrix
Testing matrix notes:
Linked Issues / Bugs
N/A