==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_c32160b4-f9c9-4100-8e0a-4903e5b212ed]...done
==> Making package: qwen-code 0.12.3-1.1 (Sat Mar 14 08:53:06 2026)
==> Retrieving sources...
-> Cloning qwen-code git repo...
Cloning into bare repository '/home/alhp/workspace/build/x86-64-v3/qwen-code-0.12.3-1/qwen-code'...
==> Validating source files with sha256sums...
qwen-code ... Passed
==> Validating source files with b2sums...
qwen-code ... Passed
==> Making package: qwen-code 0.12.3-1.1 (Sat Mar 14 07:54:58 2026)
==> Checking runtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...
Package (5) New Version Net Change
extra/c-ares 1.34.6-1 0.51 MiB
extra/libuv 1.52.1-1 0.64 MiB
extra/simdjson 1:4.3.1-1 7.43 MiB
extra/nodejs 25.7.0-1 69.38 MiB
extra/ripgrep 15.1.0-2 5.01 MiB
Total Installed Size: 82.97 MiB
:: Proceed with installation? [Y/n]
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing c-ares...
installing libuv...
installing simdjson...
installing nodejs...
Optional dependencies for nodejs
npm: nodejs package manager
installing ripgrep...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...
Package (11) New Version Net Change
extra/node-gyp 12.2.0-1 7.84 MiB
extra/nodejs-nopt 8.1.0-1 0.03 MiB
extra/oniguruma 6.9.10-1 0.88 MiB
extra/perl-error 0.17030-3 0.04 MiB
extra/perl-mailtools 2.22-3 0.10 MiB
extra/perl-timedate 2.34-1 0.14 MiB
extra/semver 7.7.4-1 0.09 MiB
extra/zlib-ng 2.3.3-1 0.28 MiB
extra/git 2.53.0-1 29.72 MiB
extra/jq 1.8.1-1 0.45 MiB
extra/npm 11.11.1-1 7.52 MiB
Total Installed Size: 47.09 MiB
:: Proceed with installation? [Y/n]
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing perl-error...
installing perl-timedate...
installing perl-mailtools...
installing zlib-ng...
installing git...
Optional dependencies for git
git-zsh-completion: upstream zsh completion
tk: gitk and git gui
openssh: ssh transport and crypto
man: show help with `git command --help`
perl-libwww: git svn
perl-term-readkey: git svn and interactive.singlekey setting
perl-io-socket-ssl: git send-email TLS support
perl-authen-sasl: git send-email TLS support
perl-cgi: gitweb (web interface) support
python: git svn & git p4
subversion: git svn
org.freedesktop.secrets: keyring credential helper
libsecret: libsecret credential helper [installed]
less: the default pager for git
installing oniguruma...
installing jq...
installing nodejs-nopt...
installing semver...
installing node-gyp...
Optional dependencies for node-gyp
gcc: to build C++ modules [installed]
make: to build C++ modules [installed]
python: to build C++ modules
installing npm...
Optional dependencies for npm
git: for dependencies using Git URL's [installed]
:: Running post-transaction hooks...
(1/3) Creating system user accounts...
Creating group 'git' with GID 969.
Creating user 'git' (git daemon user) with UID 969 and GID 969.
(2/3) Reloading system manager configuration...
Skipped: Current root is not booted.
(3/3) Arming ConditionNeedsUpdate...
==> Retrieving sources...
==> WARNING: Skipping all source file integrity checks.
==> Extracting sources...
-> Creating working copy of qwen-code git repo...
Cloning into 'qwen-code'...
done.
Switched to a new branch 'makepkg'
==> Starting prepare()...
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated node-domexception@1.0.0: Use your platform's native DOMException instead
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm warn deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
added 1555 packages, and audited 1563 packages in 47s
414 packages are looking for funding
run `npm fund` for details
33 vulnerabilities (3 low, 17 moderate, 12 high, 1 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues possible (including breaking changes), run:
npm audit fix --force
Some issues need review, and may require choosing
a different dependency.
Run `npm audit` for details.
==> Starting build()...
> @qwen-code/qwen-code@0.12.3 build
> node scripts/build.js
> @qwen-code/qwen-code@0.12.3 generate
> node scripts/generate-git-commit-info.js
> @qwen-code/qwen-code-test-utils@0.12.3 build
> node ../../scripts/build_package.js
Successfully copied files.
> @qwen-code/qwen-code-core@0.12.3 build
> node ../../scripts/build_package.js
Successfully copied files.
> @qwen-code/web-templates@0.12.3 build
> node build.mjs && tsc --build --clean && tsc
Building web-templates...
Building insight assets with Vite...
vite v5.4.21 building for production...
transforming...
✓ 7 modules transformed.
rendering chunks...
computing gzip size...
dist/main.css 17.77 kB │ gzip: 4.28 kB
dist/main.js 31.01 kB │ gzip: 8.25 kB
✓ built in 505ms
Reading generated files...
Successfully generated /startdir/src/qwen-code/packages/web-templates/src/generated/insightTemplate.ts
Successfully built all web-templates.
> @qwen-code/qwen-code@0.12.3 build
> node ../../scripts/build_package.js
Successfully copied files.
Generated settings JSON Schema at: /startdir/src/qwen-code/packages/vscode-ide-companion/schemas/settings.schema.json
> @qwen-code/webui@0.12.3 build
> vite build
vite v5.4.21 building for production...
transforming...
✓ 151 modules transformed.
rendering chunks...
[vite:dts] Start generate declaration files...
computing gzip size...
dist/styles.css 79.04 kB │ gzip: 14.77 kB
dist/index.js 355.83 kB │ gzip: 91.24 kB │ map: 776.05 kB
[vite:dts] Start rollup declaration files...
Analysis will use the bundled TypeScript version 5.8.2
[vite:dts] Declaration files built in 4289ms.
dist/styles.css 79.04 kB │ gzip: 14.77 kB
dist/index.cjs 364.05 kB │ gzip: 91.76 kB │ map: 780.45 kB
dist/styles.css 79.04 kB │ gzip: 14.77 kB
dist/index.umd.js 385.39 kB │ gzip: 92.76 kB │ map: 783.30 kB
✓ built in 6.37s
> @qwen-code/sdk@0.1.4 build
> node scripts/build.js
Compiling input files...
Processing src/index.ts
Writing src/index.ts -> dist/index.d.ts
Checking generated files...
[1;33mCompiler option "skipLibCheck" is disabled to properly check generated output[0m
Done in 8.94s
> qwen-code-vscode-ide-companion@0.12.3 build
> npm run build:dev
> qwen-code-vscode-ide-companion@0.12.3 build:dev
> npm run check-types && npm run lint && node esbuild.js
> qwen-code-vscode-ide-companion@0.12.3 check-types
> tsc --noEmit
> qwen-code-vscode-ide-companion@0.12.3 lint
> eslint src
/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/acpConnection.ts
169:5 warning Unused eslint-disable directive (no problems were reported from '@typescript-eslint/no-this-alias')
✖ 1 problem (0 errors, 1 warning)
0 errors and 1 warning potentially fixable with the `--fix` option.
> @qwen-code/qwen-code@0.12.3 bundle
> npm run generate && node esbuild.config.js && node scripts/copy_bundle_assets.js
> @qwen-code/qwen-code@0.12.3 generate
> node scripts/generate-git-commit-info.js
Copied sandbox profiles to dist/
Copying vendor directory...
Copied vendor directory to dist/
✅ All bundle assets copied to dist/
==> Starting check()...
> @qwen-code/qwen-code@0.12.3 test
> npm run test --workspaces --if-present --parallel
npm warn Unknown cli config "--parallel". This will stop working in the next major version of npm.
> @qwen-code/qwen-code@0.12.3 test
> vitest run
RUN v3.2.4 /startdir/src/qwen-code/packages/cli
Coverage enabled with v8
✓ src/services/insight/generators/DataProcessor.test.ts (35 tests) 53ms
✓ src/utils/nonInteractiveHelpers.test.ts (60 tests) 61ms
✓ src/ui/commands/languageCommand.test.ts (47 tests) 191ms
✓ src/ui/components/shared/vim-buffer-actions.test.ts (74 tests) 37ms
✓ src/ui/hooks/atCommandProcessor.test.ts (42 tests) 207ms
✓ src/utils/settingsUtils.test.ts (73 tests) 88ms
✓ src/ui/components/shared/text-buffer.test.ts (115 tests) 629ms
✓ src/ui/hooks/useSelectionList.test.ts (44 tests) 249ms
✓ src/services/FileCommandLoader.test.ts (39 tests) 278ms
✓ src/ui/contexts/KeypressContext.test.tsx (86 tests) 981ms
✓ src/ui/hooks/useGeminiStream.test.tsx (47 tests) 1224ms
✓ src/config/settings.test.ts (87 tests) 326ms
✓ src/ui/hooks/vim.test.ts (87 tests) 1677ms
✓ src/ui/hooks/slashCommandProcessor.test.ts (35 tests) 2671ms
✓ src/config/config.test.ts (161 tests | 2 skipped) 2781ms
✓ parseArguments > should throw an error when both --prompt and --prompt-interactive are used together 306ms
✓ src/nonInteractiveCli.test.ts (29 tests | 1 skipped) 427ms
✓ src/nonInteractive/io/BaseJsonOutputAdapter.test.ts (93 tests) 234ms
✓ src/nonInteractive/io/JsonOutputAdapter.test.ts (35 tests) 40ms
✓ src/nonInteractive/io/StreamJsonOutputAdapter.test.ts (46 tests) 161ms
✓ src/nonInteractive/control/ControlDispatcher.test.ts (34 tests) 122ms
✓ src/acp-integration/session/emitters/ToolCallEmitter.test.ts (33 tests) 41ms
✓ src/ui/hooks/useToolScheduler.test.ts (17 tests) 232ms
✓ src/services/prompt-processors/shellProcessor.test.ts (34 tests) 115ms
✓ src/config/migration/versions/v2-to-v3.test.ts (31 tests) 85ms
✓ src/utils/errors.test.ts (33 tests) 152ms
✓ src/ui/hooks/useSlashCompletion.test.ts (22 tests) 949ms
✓ src/utils/modelConfigUtils.test.ts (28 tests) 106ms
✓ src/acp-integration/session/SubAgentTracker.test.ts (21 tests) 271ms
❯ src/ui/components/SettingsDialog.test.tsx (53 tests | 1 failed) 9518ms
✓ SettingsDialog > Initial Rendering > should render the settings dialog with default state 232ms
✓ SettingsDialog > Initial Rendering > should accept availableTerminalHeight prop without errors 89ms
✓ SettingsDialog > Initial Rendering > should show settings list with default values 65ms
✓ SettingsDialog > Initial Rendering > should highlight first setting by default 44ms
✓ SettingsDialog > Settings Navigation > should navigate down with arrow key 411ms
✓ SettingsDialog > Settings Navigation > should navigate up with arrow key 229ms
✓ SettingsDialog > Settings Navigation > should navigate with vim keys (j/k) 277ms
✓ SettingsDialog > Settings Navigation > wraps around when at the top of the list 161ms
✓ SettingsDialog > Settings Toggling > should toggle setting with Enter key 392ms
✓ SettingsDialog > Settings Toggling > enum values > toggles enum values with the enter key 197ms
✓ SettingsDialog > Settings Toggling > enum values > loops back when reaching the end of an enum 194ms
✓ SettingsDialog > Settings Toggling > should toggle setting with Space key 243ms
✓ SettingsDialog > Settings Toggling > should handle vim mode setting specially 155ms
✓ SettingsDialog > Scope Selection > should switch between scopes 208ms
✓ SettingsDialog > Scope Selection > should reset to settings focus when scope is selected 80ms
✓ SettingsDialog > Restart Prompt > should show restart prompt for restart-required settings 165ms
✓ SettingsDialog > Restart Prompt > should handle restart request when r is pressed 186ms
✓ SettingsDialog > Escape Key Behavior > should call onSelect with undefined when Escape is pressed 61ms
✓ SettingsDialog > Settings Persistence > should persist settings across scope changes 156ms
✓ SettingsDialog > Settings Persistence > should show different values for different scopes 35ms
✓ SettingsDialog > Error Handling > should handle vim mode toggle errors gracefully 90ms
✓ SettingsDialog > Complex State Management > should track modified settings correctly 252ms
✓ SettingsDialog > Complex State Management > should handle scrolling when there are many settings 257ms
✓ SettingsDialog > VimMode Integration > should sync with VimModeContext when vim mode is toggled 79ms
✓ SettingsDialog > Specific Settings Behavior > should show correct display values for settings with different states 37ms
✓ SettingsDialog > Specific Settings Behavior > should handle immediate settings save for non-restart-required settings 169ms
✓ SettingsDialog > Specific Settings Behavior > should show restart prompt for restart-required settings 109ms
× SettingsDialog > Specific Settings Behavior > should keep restart prompt when switching scopes 1330ms
→ expected '╭────────────────────────────────────…' to contain 'To see changes, Qwen Code must be res…'
✓ SettingsDialog > Settings Display Values > should show correct values for inherited settings 20ms
✓ SettingsDialog > Settings Display Values > should show override indicator for overridden settings 29ms
✓ SettingsDialog > Output Language > treats empty output language as auto 404ms
✓ SettingsDialog > Keyboard Shortcuts Edge Cases > should handle rapid key presses gracefully 138ms
✓ SettingsDialog > Keyboard Shortcuts Edge Cases > should handle Ctrl+C to reset current setting to default 82ms
✓ SettingsDialog > Keyboard Shortcuts Edge Cases > should handle Ctrl+L to reset current setting to default 73ms
✓ SettingsDialog > Keyboard Shortcuts Edge Cases > should handle navigation when only one setting exists 134ms
✓ SettingsDialog > Keyboard Shortcuts Edge Cases > should properly handle Tab navigation between sections 81ms
✓ SettingsDialog > Error Recovery > should handle malformed settings gracefully 42ms
✓ SettingsDialog > Error Recovery > should handle missing setting definitions gracefully 68ms
✓ SettingsDialog > Complex User Interactions > should handle complete user workflow: navigate, toggle, change scope, exit 80ms
✓ SettingsDialog > Complex User Interactions > should allow changing multiple settings without losing pending changes 360ms
✓ SettingsDialog > Complex User Interactions > should maintain state consistency during complex interactions 407ms
✓ SettingsDialog > Complex User Interactions > should handle restart workflow correctly 131ms
✓ SettingsDialog > String Settings Editing > should allow editing and committing a string setting 1117ms
✓ SettingsDialog > Snapshot Tests > should render default state correctly 31ms
✓ SettingsDialog > Snapshot Tests > should render with various boolean settings enabled 30ms
✓ SettingsDialog > Snapshot Tests > should render with mixed boolean and number settings 60ms
✓ SettingsDialog > Snapshot Tests > should render focused on scope selector 40ms
✓ SettingsDialog > Snapshot Tests > should render with different scope selected (System) 43ms
✓ SettingsDialog > Snapshot Tests > should render with different scope selected (Workspace) 59ms
✓ SettingsDialog > Snapshot Tests > should render with accessibility settings enabled 41ms
✓ SettingsDialog > Snapshot Tests > should render with file filtering settings configured 43ms
✓ SettingsDialog > Snapshot Tests > should render with tools and security settings 43ms
✓ SettingsDialog > Snapshot Tests > should render with all boolean settings disabled 56ms
✓ src/ui/hooks/shellCommandProcessor.test.ts (20 tests) 941ms
✓ src/utils/languageUtils.test.ts (44 tests) 134ms
✓ src/ui/hooks/useCodingPlanUpdates.test.ts (15 tests) 345ms
✓ src/ui/hooks/useAutoAcceptIndicator.test.ts (15 tests) 172ms
✓ src/ui/AppContainer.test.tsx (31 tests) 1445ms
✓ AppContainer State Management > Error Handling > handles config methods that might throw 578ms
✓ src/validateNonInterActiveAuth.test.ts (13 tests) 202ms
✓ src/ui/keyMatchers.test.ts (34 tests) 35ms
(node:2508) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 resize listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit
(Use `node --trace-warnings ...` to show where the warning was created)
✓ src/ui/commands/exportCommand.test.ts (14 tests) 33ms
✓ src/nonInteractive/session.test.ts (21 tests) 164ms
✓ src/ui/hooks/useExtensionUpdates.test.ts (15 tests) 469ms
✓ src/services/McpPromptLoader.test.ts (25 tests) 44ms
✓ src/ui/components/StandaloneSessionPicker.test.tsx (15 tests) 2834ms
✓ src/config/trustedFolders.test.ts (21 tests) 37ms
✓ src/ui/utils/commandUtils.test.ts (26 tests) 85ms
✓ src/ui/components/shared/BaseSelectionList.test.tsx (26 tests | 1 skipped) 791ms
✓ src/acp-integration/session/HistoryReplayer.test.ts (16 tests) 68ms
✓ src/ui/hooks/useAtCompletion.test.ts (13 tests) 1431ms
✓ src/ui/commands/memoryCommand.test.ts (13 tests) 64ms
✓ src/ui/hooks/useQwenAuth.test.ts (17 tests) 227ms
✓ src/ui/components/QwenOAuthProgress.test.tsx (18 tests) 950ms
✓ src/ui/auth/AuthDialog.test.tsx (10 tests) 1322ms
✓ AuthDialog > should prevent exiting when no auth method is selected and show error message 411ms
✓ src/ui/hooks/useCommandCompletion.test.ts (14 tests) 383ms
✓ src/config/migration/index.test.ts (26 tests) 15ms
✓ src/ui/components/InputPrompt.test.tsx (100 tests | 1 skipped) 18255ms
✓ InputPrompt > should NOT call completion navigation when suggestions are not showing 309ms
✓ InputPrompt > paste auto-submission protection > should allow submission after paste protection timeout 790ms
✓ InputPrompt > large paste placeholder > should expand placeholder to full content on submit 822ms
✓ InputPrompt > large paste placeholder > should expand same-size placeholders correctly when #2 appears first 870ms
✓ InputPrompt > large paste placeholder > should write expanded placeholder content to shell history 826ms
✓ InputPrompt > large paste placeholder > should reuse placeholder ID after deletion 323ms
✓ InputPrompt > large paste placeholder > should handle mixed pastes with different character counts 313ms
✓ src/commands/extensions/settings.test.ts (20 tests) 395ms
✓ src/services/CommandService.test.ts (11 tests) 88ms
✓ src/ui/components/messages/DiffRenderer.test.tsx (16 tests) 1262ms
✓ > should call colorizeCode with null language for new file with unknown extension 586ms
✓ src/commands/extensions/consent.test.ts (17 tests) 84ms
Invalid values:
Argument: approval-mode, Given: "invalid_mode", Choices: "plan", "default", "auto-edit", "yolo"
Cannot use both --yolo (-y) and --approval-mode together. Use --approval-mode=yolo instead.
process.exit unexpectedly called with "1"
✓ src/ui/components/ModelDialog.test.tsx (10 tests) 472ms
✓ src/commands/extensions/update.test.ts (14 tests) 124ms
✓ src/config/config.integration.test.ts (19 tests) 1698ms
✓ Configuration Integration Tests > Approval Mode Integration Tests > should parse --approval-mode=auto-edit correctly through the full argument parsing flow 1499ms
✓ src/utils/installationInfo.test.ts (16 tests) 46ms
✓ src/config/settingsSchema.test.ts (14 tests) 35ms
✓ src/utils/envVarResolver.test.ts (16 tests) 13ms
✓ src/ui/components/shared/MaxSizedBox.test.tsx (21 tests) 505ms
✓ src/commands/mcp/add.test.ts (20 tests) 526ms
✓ src/ui/components/messages/ToolGroupMessage.test.tsx (14 tests) 380ms
✓ src/utils/systemInfo.test.ts (15 tests) 52ms
Fatal error: Failed to relaunch the CLI process.
PROCESS_EXIT_CALLED
Fatal error: Failed to relaunch the CLI process.
PROCESS_EXIT_CALLED
Fatal error: Failed to relaunch the CLI process.
Runner failed
node:internal/modules/cjs/loader:1458
throw err;
^
Error: Cannot find module '/app/cli.js'
at Module._resolveFilename (node:internal/modules/cjs/loader:1455:15)
at defaultResolveImpl (node:internal/modules/cjs/loader:1065:19)
at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1070:22)
at Module._load (node:internal/modules/cjs/loader:1241:25)
at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
at Module.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:154:5)
at node:internal/main/run_main_module:33:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Node.js v25.7.0
Fatal error: Failed to relaunch the CLI process.
PROCESS_EXIT_CALLED
✓ src/utils/writeWithBackup.test.ts (12 tests) 67ms
✓ src/ui/components/StatsDisplay.test.tsx (12 tests) 1198ms
✓ > Title Rendering > renders the custom title when a title prop is provided 464ms
✓ src/utils/relaunch.test.ts (8 tests) 143ms
]2;Qwen - cli]2;Qwen - root]2;Qwen - root]2;Qwen - root ✓ src/ui/commands/restoreCommand.test.ts (13 tests) 67ms
✓ src/services/prompt-processors/injectionParser.test.ts (21 tests) 10ms
✓ src/gemini.test.tsx (11 tests) 654ms
✓ gemini.tsx main function > verifies that we dont load the config before relaunchAppInChildProcess 586ms
✓ src/ui/components/messages/ToolMessage.test.tsx (13 tests) 301ms
✓ src/services/FileCommandLoader-extension.test.ts (6 tests) 142ms
✓ src/utils/handleAutoUpdate.test.ts (9 tests) 52ms
(node:3156) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 mcp-client-update listeners added to [EventEmitter]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit
(Use `node --trace-warnings ...` to show where the warning was created)
✓ src/ui/components/Composer.test.tsx (14 tests) 197ms
✓ src/ui/commands/copyCommand.test.ts (11 tests) 27ms
✓ src/ui/components/LoadingIndicator.test.tsx (16 tests) 376ms
✓ src/ui/commands/ideCommand.test.ts (8 tests) 123ms
✓ src/ui/themes/color-utils.test.ts (16 tests) 50ms
✓ src/ui/hooks/useKeypress.test.ts (15 tests) 546ms
✓ src/ui/utils/resumeHistoryUtils.test.ts (4 tests) 10ms
✓ src/ui/components/messages/AskUserQuestionDialog.test.tsx (13 tests) 1604ms
✓ src/ui/hooks/useEditorSettings.test.ts (10 tests) 143ms
✓ src/ui/hooks/useShellHistory.test.ts (7 tests) 789ms
✓ src/ui/utils/computeStats.test.ts (12 tests) 41ms
✓ src/ui/hooks/useInputHistory.test.ts (11 tests) 221ms
✓ src/ui/hooks/useInputHistoryStore.test.ts (14 tests) 144ms
✓ src/ui/commands/aboutCommand.test.ts (7 tests) 67ms
✓ src/ui/hooks/usePermissionsModifyTrust.test.ts (8 tests) 167ms
✓ src/acp-integration/session/emitters/PlanEmitter.test.ts (17 tests) 22ms
✓ src/acp-integration/session/emitters/MessageEmitter.test.ts (13 tests) 45ms
✓ src/config/migration/versions/v1-to-v2.test.ts (20 tests) 30ms
✓ src/config/auth.test.ts (13 tests) 92ms
✓ src/ui/hooks/useHistoryManager.test.ts (8 tests) 167ms
✓ src/services/command-migration-tool.test.ts (13 tests) 53ms
✓ src/ui/hooks/usePhraseCycler.test.ts (9 tests) 374ms
✓ src/acp-integration/session/Session.test.ts (10 tests) 54ms
✓ src/commands/extensions/install.test.ts (8 tests) 77ms
✓ src/services/prompt-processors/atFileProcessor.test.ts (11 tests) 135ms
✓ src/ui/hooks/useReverseSearchCompletion.test.tsx (10 tests) 131ms
✓ src/ui/hooks/useMessageQueue.test.ts (9 tests) 131ms
✓ src/utils/gitUtils.test.ts (24 tests) 68ms
✓ src/ui/commands/setupGithubCommand.test.ts (8 tests) 84ms
✓ src/ui/components/HistoryItemDisplay.test.tsx (13 tests) 884ms
✓ src/ui/utils/textUtils.test.ts (9 tests) 28ms
✓ src/ui/hooks/useIdeTrustListener.test.ts (5 tests) 164ms
✓ src/nonInteractive/io/StreamJsonInputReader.test.ts (11 tests) 71ms
✓ src/ui/hooks/useGitBranchName.test.ts (7 tests | 2 skipped) 80ms
✓ src/ui/components/messages/ToolConfirmationMessage.test.tsx (13 tests) 657ms
✓ src/ui/components/messages/CompressionMessage.test.tsx (8 tests) 428ms
Error parsing settings file.
Unexpected end of JSON input
Settings file may be corrupted. Please check the JSON syntax.
✓ src/ui/components/PluginChoicePrompt.test.tsx (12 tests) 535ms
✓ src/utils/commentJson.test.ts (8 tests) 32ms
✓ src/nonInteractiveCliCommands.test.ts (9 tests) 68ms
✓ src/ui/hooks/useResumeCommand.test.ts (6 tests) 138ms
✓ src/ui/utils/MarkdownDisplay.test.tsx (31 tests) 1021ms
✓ > with 'Windows' line endings > renders a fenced code block without a language 311ms
✓ src/ui/hooks/useFolderTrust.test.ts (9 tests) 125ms
✓ src/ui/components/ModelStatsDisplay.test.tsx (6 tests) 574ms
✓ src/commands/mcp/list.test.ts (4 tests) 27ms
✓ src/ui/commands/directoryCommand.test.tsx (7 tests) 26ms
✓ src/services/BuiltinCommandLoader.test.ts (7 tests) 36ms
✓ src/ui/components/PermissionsModifyTrustDialog.test.tsx (6 tests) 637ms
✓ src/ui/utils/formatters.test.ts (25 tests) 54ms
✓ src/ui/hooks/useAttentionNotifications.test.ts (6 tests) 92ms
✓ src/ui/utils/highlight.test.ts (16 tests) 22ms
✓ src/utils/commands.test.ts (12 tests) 26ms
✓ src/ui/hooks/useLoadingIndicator.test.ts (5 tests) 168ms
✓ src/ui/commands/extensionsCommand.test.ts (7 tests) 67ms
✓ src/ui/commands/approvalModeCommand.test.ts (13 tests) 19ms
✓ src/ui/themes/theme-manager.test.ts (12 tests) 85ms
✓ src/ui/models/availableModels.test.ts (14 tests) 39ms
✓ src/utils/deepMerge.test.ts (13 tests) 50ms
✓ src/ui/contexts/SessionContext.test.tsx (4 tests) 96ms
✓ src/config/migration/scheduler.test.ts (7 tests) 12ms
✓ src/ui/commands/initCommand.test.ts (5 tests) 21ms
✓ src/ui/components/shared/RadioButtonSelect.test.tsx (5 tests) 114ms
✓ src/ui/commands/bugCommand.test.ts (3 tests) 20ms
✓ src/ui/components/mcp/utils.test.ts (16 tests) 22ms
✓ src/acp-integration/service/filesystem.test.ts (4 tests) 9ms
✓ src/ui/components/ToolStatsDisplay.test.tsx (5 tests) 163ms
✓ src/ui/utils/updateCheck.test.ts (9 tests) 66ms
✓ src/ui/hooks/useTimer.test.ts (8 tests) 159ms
✓ src/commands/extensions/utils.test.ts (6 tests) 49ms
✓ src/services/markdown-command-parser.test.ts (13 tests) 39ms
✓ src/services/FileCommandLoader-markdown.test.ts (4 tests) 169ms
✓ src/ui/components/AnsiOutput.test.tsx (6 tests) 213ms
✓ src/ui/components/extensions/ExtensionsManagerDialog.test.tsx (4 tests) 259ms
✓ src/ui/commands/mcpCommand.test.ts (6 tests) 52ms
✓ src/ui/components/views/McpStatus.test.tsx (12 tests) 473ms
✓ src/ui/commands/compressCommand.test.ts (5 tests) 53ms
✓ src/ui/hooks/useFocus.test.ts (6 tests) 176ms
✓ src/ui/App.test.tsx (7 tests) 182ms
✓ src/ui/utils/clipboardUtils.test.ts (11 tests) 32ms
✓ src/ui/components/shared/EnumSelector.test.tsx (9 tests) 198ms
✓ src/ui/components/SessionSummaryDisplay.test.tsx (3 tests) 278ms
✓ src/commands/extensions/disable.test.ts (7 tests) 112ms
✓ src/ui/commands/modelCommand.test.ts (8 tests) 47ms
✓ src/commands/extensions/enable.test.ts (7 tests) 126ms
✓ src/ui/components/FolderTrustDialog.test.tsx (9 tests) 892ms
✓ FolderTrustDialog > should render the dialog with title and description 360ms
✓ src/utils/userStartupWarnings.test.ts (5 tests) 118ms
✓ src/commands/extensions/list.test.ts (4 tests) 52ms
✓ src/ui/components/extensions/steps/ExtensionListStep.test.tsx (5 tests) 363ms
✓ src/utils/readStdin.test.ts (4 tests) 37ms
✓ src/ui/commands/toolsCommand.test.ts (4 tests) 49ms
✓ src/ui/components/PrepareLabel.test.tsx (6 tests) 188ms
✓ src/ui/commands/clearCommand.test.ts (2 tests) 6ms
✓ src/commands/mcp/remove.test.ts (4 tests) 131ms
✓ src/ui/themes/theme.test.ts (5 tests) 8ms
✓ src/ui/components/SettingInputPrompt.test.tsx (6 tests) 257ms
✓ src/ui/components/Footer.test.tsx (6 tests) 199ms
No extensions installed.
Successfully created new extension at /some/path.
You can install this using "qwen extensions link /some/path" to test it out.
Successfully created new extension from template "context" at /some/path.
You can install this using "qwen extensions link /some/path" to test it out.
Path already exists: /some/path
✓ src/commands/extensions.test.tsx (11 tests) 106ms
✓ src/ui/components/views/ExtensionsList.test.tsx (9 tests) 304ms
✓ src/ui/components/AppHeader.test.tsx (3 tests) 283ms
✓ src/commands/extensions/new.test.ts (4 tests) 105ms
✓ src/utils/systemInfoFields.test.ts (2 tests) 9ms
✓ src/ui/components/extensions/steps/ActionSelectionStep.test.tsx (5 tests) 303ms
✓ src/ui/utils/displayUtils.test.ts (8 tests) 18ms
✓ src/ui/components/ConsentPrompt.test.tsx (5 tests) 290ms
✓ src/ui/commands/docsCommand.test.ts (3 tests) 56ms
✓ src/ui/components/QueuedMessageDisplay.test.tsx (5 tests) 181ms
✓ src/ui/utils/markdownUtilities.test.ts (7 tests) 6ms
✓ src/ui/hooks/useMemoryMonitor.test.ts (3 tests) 108ms
✓ src/config/keyBindings.test.ts (3 tests) 14ms
✓ src/utils/windowTitle.test.ts (7 tests) 7ms
✓ src/commands/extensions/link.test.ts (4 tests) 295ms
✓ src/ui/components/ContextSummaryDisplay.test.tsx (4 tests) 197ms
✓ src/ui/components/ThemeDialog.test.tsx (2 tests) 856ms
✓ ThemeDialog Snapshots > should render correctly in theme selection mode 664ms
✓ src/utils/startupWarnings.test.ts (4 tests) 17ms
✓ src/ui/commands/terminalSetupCommand.test.ts (5 tests) 15ms
✓ src/config/modelProvidersScope.test.ts (4 tests) 14ms
✓ src/ui/components/TodoDisplay.test.tsx (6 tests) 126ms
✓ src/ui/utils/sessionPickerUtils.test.ts (7 tests) 5ms
✓ src/ui/components/Header.test.tsx (9 tests) 353ms
✓ src/ui/components/IdeTrustChangeDialog.test.tsx (6 tests) 320ms
✓ src/ui/commands/statsCommand.test.ts (3 tests) 22ms
✓ src/ui/components/shared/DescriptiveRadioButtonSelect.test.tsx (2 tests) 72ms
✓ src/ui/hooks/useModelCommand.test.ts (3 tests) 165ms
✓ src/ui/components/Help.test.tsx (4 tests) 433ms
✓ src/test-utils/mockCommandContext.test.ts (3 tests) 6ms
✓ src/ui/components/Tips.test.ts (6 tests) 38ms
✓ src/utils/attentionNotification.test.ts (4 tests) 48ms
✓ src/commands/mcp.test.ts (3 tests) 47ms
✓ src/ui/commands/helpCommand.test.ts (2 tests) 11ms
✓ src/ui/commands/quitCommand.test.ts (1 test) 16ms
✓ src/utils/cleanup.test.ts (4 tests) 5ms
✓ src/services/prompt-processors/argumentProcessor.test.ts (2 tests) 18ms
✓ src/ui/components/ShellConfirmationDialog.test.tsx (4 tests) 177ms
✓ src/utils/acpModelUtils.test.ts (5 tests) 6ms
✓ src/ui/commands/permissionsCommand.test.ts (3 tests) 5ms
✓ src/ui/commands/resumeCommand.test.ts (2 tests) 20ms
✓ src/ui/components/views/ToolsList.test.tsx (3 tests) 56ms
✓ src/ui/commands/themeCommand.test.ts (2 tests) 5ms
✓ src/ui/components/LoopDetectionConfirmation.test.tsx (2 tests) 172ms
✓ src/ui/commands/settingsCommand.test.ts (2 tests) 5ms
✓ src/ui/commands/editorCommand.test.ts (2 tests) 8ms
✓ src/utils/processUtils.test.ts (1 test) 14ms
✓ src/ui/commands/authCommand.test.ts (2 tests) 9ms
✓ src/commands/extensions/uninstall.test.ts (1 test) 37ms
⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯
FAIL src/ui/components/SettingsDialog.test.tsx > SettingsDialog > Specific Settings Behavior > should keep restart prompt when switching scopes
AssertionError: expected '╭────────────────────────────────────…' to contain 'To see changes, Qwen Code must be res…'
- Expected
+ Received
- To see changes, Qwen Code must be restarted
+ ╭──────────────────────────────────────────────────────────────────────────────────────────────────╮
+ │ │
+ │ > Settings │
+ │ │
+ │ ▲ │
+ │ Tool Approval Mode Default │
+ │ ● Language: UI Auto (detect from system) │
+ │ Language: Model auto │
+ │ Theme Qwen Dark │
+ │ Vim Mode false │
+ │ Interactive Shell (PTY) true │
+ │ Preferred Editor │
+ │ Auto-connect to IDE false │
+ │ ▼ │
+ │ │
+ │ (Use Enter to select, Tab to configure scope) │
+ │ │
+ ╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
❯ src/ui/components/SettingsDialog.test.tsx:894:29
892|
893| await waitFor(() => {
894| expect(lastFrame()).toContain(
| ^
895| 'To see changes, Qwen Code must be restarted',
896| );
❯ waitFor src/ui/components/SettingsDialog.test.tsx:176:9
❯ src/ui/components/SettingsDialog.test.tsx:893:7
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Test Files 1 failed | 218 passed (219)
Tests 1 failed | 3488 passed | 7 skipped (3496)
Start at 07:56:56
Duration 98.62s (transform 58.28s, setup 11.71s, collect 1416.89s, tests 85.61s, environment 275.64s, prepare 65.77s)
JUNIT report written to /startdir/src/qwen-code/packages/cli/junit.xml
npm error Lifecycle script `test` failed with error:
npm error code 1
npm error path /startdir/src/qwen-code/packages/cli
npm error workspace @qwen-code/qwen-code@0.12.3
npm error location /startdir/src/qwen-code/packages/cli
npm error command failed
npm error command sh -c vitest run
> @qwen-code/qwen-code-core@0.12.3 test
> vitest run
RUN v3.2.4 /startdir/src/qwen-code/packages/core
Coverage enabled with v8
✓ src/utils/memoryImportProcessor.test.ts (28 tests) 166ms
✓ src/mcp/oauth-provider.test.ts (22 tests) 250ms
✓ src/services/shellExecutionService.test.ts (39 tests) 190ms
✓ src/core/openaiContentGenerator/pipeline.test.ts (22 tests) 107ms
✓ src/qwen/sharedTokenManager.test.ts (31 tests) 384ms
✓ src/tools/mcp-tool.test.ts (45 tests) 383ms
✓ src/utils/fileUtils.test.ts (76 tests) 159ms
(node:7024) [UNDICI-EHPA] Warning: EnvHttpProxyAgent is experimental, expect them to change at any time.
(Use `node --trace-warnings ...` to show where the warning was created)
✓ src/ide/ide-client.test.ts (32 tests) 185ms
✓ src/core/openaiContentGenerator/streamingToolCallParser.test.ts (59 tests) 84ms
✓ src/utils/paths.test.ts (105 tests) 84ms
✓ src/tools/lsp.test.ts (69 tests) 1098ms
+----------------- Qwen OAuth Device Authorization ------------------+
| |
| Please visit the following URL in your browser to authorize: |
| |
| https://chat.qwen.ai/device?code=TEST123 |
| |
| Waiting for authorization to complete... |
| |
+--------------------------------------------------------------------+
✓ src/core/anthropicContentGenerator/converter.test.ts (29 tests) 56ms
+----------------- Qwen OAuth Device Authorization ------------------+
| |
| Please visit the following URL in your browser to authorize: |
| |
| https://chat.qwen.ai/device?code=TEST123 |
| |
| Waiting for authorization to complete... |
| |
+--------------------------------------------------------------------+
+----------------- Qwen OAuth Device Authorization ------------------+
| |
| Please visit the following URL in your browser to authorize: |
| |
| https://chat.qwen.ai/device?code=TEST123 |
| |
| Waiting for authorization to complete... |
| |
+--------------------------------------------------------------------+
+----------------- Qwen OAuth Device Authorization ------------------+
| |
| Please visit the following URL in your browser to authorize: |
| |
| https://chat.qwen.ai/device?code=TEST123 |
| |
| Waiting for authorization to complete... |
| |
+--------------------------------------------------------------------+
+----------------- Qwen OAuth Device Authorization ------------------+
| |
| Please visit the following URL in your browser to authorize: |
| |
| https://chat.qwen.ai/device?code=TEST123 |
| |
| Waiting for authorization to complete... |
| |
+--------------------------------------------------------------------+
✓ src/qwen/qwenOAuth2.test.ts (81 tests) 2203ms
✓ getQwenOAuthClient - Enhanced Error Scenarios > should handle different authentication failure reasons - timeout 2075ms
✓ src/tools/memoryTool.test.ts (29 tests) 111ms
✓ src/tools/ripGrep.test.ts (40 tests) 314ms
✓ src/core/logger.test.ts (38 tests) 255ms
✓ src/models/modelsConfig.test.ts (41 tests) 47ms
✓ src/core/openaiContentGenerator/provider/dashscope.test.ts (43 tests) 62ms
✓ src/extension/extensionSettings.test.ts (23 tests) 64ms
✓ src/telemetry/uiTelemetry.test.ts (21 tests) 74ms
✓ src/services/sessionService.test.ts (25 tests) 102ms
✓ src/lsp/NativeLspService.integration.test.ts (30 tests) 70ms
✓ src/core/prompts.test.ts (51 tests) 194ms
✓ src/services/loopDetectionService.test.ts (30 tests) 898ms
✓ LoopDetectionService > Content Loop Detection > should not detect a loop for random content 574ms
✓ src/utils/editor.test.ts (127 tests) 45ms
✓ src/hooks/hookAggregator.test.ts (24 tests) 10ms
✓ src/utils/filesearch/fileSearch.test.ts (27 tests) 106ms
✓ src/hooks/hookRegistry.test.ts (23 tests) 39ms
✓ src/models/modelRegistry.test.ts (35 tests) 22ms
✓ src/telemetry/loggers.test.ts (24 tests) 106ms
✓ src/core/turn.test.ts (23 tests) 24ms
✓ src/tools/write-file.test.ts (34 tests) 387ms
✓ src/core/openaiContentGenerator/converter.test.ts (63 tests) 178ms
✓ src/utils/retry.test.ts (29 tests) 36ms
✓ src/subagents/subagent-manager.test.ts (53 tests) 281ms
✓ src/extension/extensionManager.test.ts (34 tests) 262ms
✓ src/core/coreToolScheduler.test.ts (43 tests) 490ms
✓ src/subagents/subagent.test.ts (23 tests | 2 skipped) 877ms
✓ subagent.ts > SubAgentScope > create (Tool Validation) > should create a SubAgentScope successfully with minimal config 437ms
✓ src/qwen/qwenContentGenerator.test.ts (44 tests) 357ms
✓ src/tools/shell.test.ts (53 tests) 888ms
✓ src/tools/edit.test.ts (56 tests) 971ms
✓ src/config/config.test.ts (75 tests) 494ms
✓ src/core/client.test.ts (48 tests) 1060ms
✓ src/hooks/hookRunner.test.ts (26 tests) 186ms
✓ src/utils/shell-utils.test.ts (69 tests) 89ms
✓ src/tools/read-file.test.ts (27 tests) 492ms
✓ src/utils/systemEncoding.test.ts (39 tests) 41ms
✓ src/utils/workspaceContext.test.ts (34 tests) 105ms
✓ src/mcp/oauth-utils.test.ts (27 tests) 29ms
✓ src/mcp/oauth-token-storage.test.ts (28 tests) 102ms
✓ src/telemetry/metrics.test.ts (38 tests) 2789ms
✓ src/subagents/validation.test.ts (37 tests) 59ms
✓ src/utils/filesearch/crawler.test.ts (18 tests) 116ms
✓ src/tools/ls.test.ts (25 tests) 533ms
✓ src/utils/memoryDiscovery.test.ts (14 tests) 359ms
✓ src/ide/ideContext.test.ts (23 tests) 56ms
✓ src/utils/pathReader.test.ts (16 tests) 317ms
✓ src/services/chatCompressionService.test.ts (19 tests) 86ms
✓ src/telemetry/qwen-logger/qwen-logger.test.ts (23 tests) 130ms
✓ src/utils/openaiLogger.test.ts (25 tests) 349ms
✓ src/tools/skill.test.ts (21 tests) 92ms
✓ src/core/tokenLimits.test.ts (51 tests) 22ms
✓ src/skills/skill-manager.test.ts (33 tests) 113ms
✓ src/tools/glob.test.ts (37 tests) 3823ms
✓ GlobTool > ignore file handling > should respect .qwenignore files by default 303ms
✓ GlobTool > file count truncation > should truncate results when more than 100 files are found 661ms
✓ src/tools/grep.test.ts (29 tests) 1078ms
✓ src/hooks/hookPlanner.test.ts (20 tests) 17ms
✓ src/core/openaiContentGenerator/errorHandler.test.ts (36 tests) 24ms
✓ src/utils/ignorePatterns.test.ts (28 tests) 13ms
✓ src/core/geminiContentGenerator/geminiContentGenerator.test.ts (10 tests) 72ms
✓ src/utils/partUtils.test.ts (37 tests) 45ms
✓ src/core/baseLlmClient.test.ts (18 tests) 105ms
✓ src/core/anthropicContentGenerator/anthropicContentGenerator.test.ts (10 tests) 3658ms
✓ AnthropicContentGenerator > passes a QwenCode User-Agent header to the Anthropic SDK 691ms
✓ AnthropicContentGenerator > merges customHeaders into defaultHeaders (does not replace defaults) 346ms
✓ AnthropicContentGenerator > does not add the effort beta header when reasoning.effort is not set 390ms
✓ AnthropicContentGenerator > omits the anthropic beta header when reasoning is disabled 348ms
✓ AnthropicContentGenerator > generateContent > builds request with config sampling params (config overrides request) and thinking budget 305ms
✓ AnthropicContentGenerator > generateContent > omits thinking when request.config.thinkingConfig.includeThoughts is false 477ms
✓ AnthropicContentGenerator > generateContentStream > requests stream=true and converts streamed events into Gemini chunks 333ms
✓ src/core/loggingContentGenerator/loggingContentGenerator.test.ts (4 tests) 87ms
✓ src/subagents/subagent-statistics.test.ts (30 tests) 47ms
✓ src/utils/request-tokenizer/textTokenizer.test.ts (31 tests) 111ms
✓ src/utils/getFolderStructure.test.ts (15 tests) 131ms
✓ src/core/__tests__/openaiTimeoutHandling.test.ts (12 tests) 32ms
✓ src/utils/generateContentResponseUtilities.test.ts (29 tests) 19ms
✓ src/tools/modifiable-tool.test.ts (11 tests) 77ms
✓ src/utils/readManyFiles.test.ts (15 tests) 109ms
✓ src/extension/marketplace.test.ts (18 tests) 41ms
✓ src/core/openaiContentGenerator/provider/default.test.ts (14 tests) 17ms
✓ src/tools/todoWrite.test.ts (17 tests) 38ms
✓ src/core/geminiChat.test.ts (31 tests) 6329ms
✓ GeminiChat > should correctly retry and append to an existing history mid-conversation 2026ms
✓ GeminiChat > should retry if the model returns a completely empty stream (no chunks) 2013ms
✓ GeminiChat > should discard valid partial content from a failed attempt upon retry 2007ms
✓ src/output/json-formatter.test.ts (15 tests) 8ms
✓ src/mcp/token-storage/hybrid-token-storage.test.ts (11 tests) 16ms
✓ src/hooks/hookEventHandler.test.ts (10 tests) 60ms
✓ src/skills/skill-load.test.ts (16 tests) 26ms
✓ src/models/modelConfigResolver.test.ts (19 tests) 36ms
✓ src/mcp/token-storage/file-token-storage.test.ts (16 tests) 1610ms
✓ src/utils/schemaValidator.test.ts (22 tests) 298ms
✓ src/core/openaiContentGenerator/openaiContentGenerator.test.ts (13 tests) 13ms
✓ src/utils/envVarResolver.test.ts (16 tests) 16ms
✓ src/utils/gitIgnoreParser.test.ts (20 tests) 177ms
✓ src/services/gitService.test.ts (12 tests) 79ms
✓ src/mcp/token-storage/keychain-token-storage.test.ts (24 tests) 3946ms
✓ src/utils/debugLogger.test.ts (16 tests) 154ms
✓ src/utils/subagentGenerator.test.ts (9 tests) 14ms
✓ src/utils/secure-browser-launcher.test.ts (14 tests) 54ms
✓ src/services/fileSystemService.test.ts (12 tests) 165ms
✓ src/utils/request-tokenizer/requestTokenizer.test.ts (11 tests) 28ms
✓ src/core/openaiContentGenerator/provider/openrouter.test.ts (12 tests) 24ms
✓ src/services/fileDiscoveryService.test.ts (13 tests) 53ms
✓ src/tools/task.test.ts (23 tests) 142ms
✓ src/utils/editHelper.test.ts (17 tests) 34ms
✓ src/utils/environmentContext.test.ts (7 tests) 121ms
✓ src/utils/yaml-parser.test.ts (18 tests) 12ms
✓ src/tools/tools.test.ts (11 tests) 27ms
✓ src/core/modalityDefaults.test.ts (30 tests) 36ms
✓ src/utils/terminalSerializer.test.ts (16 tests) 228ms
✓ src/tools/mcp-client.test.ts (26 tests) 95ms
✓ src/mcp/token-storage/base-token-storage.test.ts (12 tests) 21ms
✓ src/mcp/sa-impersonation-provider.test.ts (8 tests) 16ms
✓ src/extension/claude-converter.test.ts (12 tests) 103ms
✓ src/ide/ide-installer.test.ts (10 tests) 51ms
✓ src/tools/diffOptions.test.ts (9 tests) 10ms
✓ src/extension/github.test.ts (28 tests) 288ms
✓ src/ide/process-utils.test.ts (6 tests) 16ms
✓ src/extension/gemini-converter.test.ts (9 tests) 7ms
✓ src/tools/tool-registry.test.ts (9 tests) 207ms
✓ src/utils/request-tokenizer/imageTokenizer.test.ts (9 tests) 15ms
✓ src/utils/filesearch/ignore.test.ts (12 tests) 64ms
✓ src/services/chatRecordingService.test.ts (11 tests) 42ms
✓ src/utils/safeJsonParse.test.ts (14 tests) 20ms
✓ src/ide/detect-ide.test.ts (14 tests) 6ms
✓ src/extension/override.test.ts (16 tests) 13ms
✓ src/utils/quotaErrorDetection.test.ts (17 tests) 5ms
✓ src/core/openaiContentGenerator/provider/deepseek.test.ts (7 tests) 33ms
✓ src/extension/settings.test.ts (10 tests) 24ms
✓ src/utils/textUtils.test.ts (20 tests) 8ms
✓ src/utils/filesearch/crawlCache.test.ts (9 tests) 12ms
✓ src/utils/errorReporting.test.ts (5 tests) 30ms
✓ src/utils/configResolver.test.ts (12 tests) 7ms
✓ src/telemetry/sdk.test.ts (6 tests) 77ms
✓ src/tools/web-search/index.test.ts (10 tests) 167ms
✓ src/utils/schemaConverter.test.ts (12 tests) 25ms
✓ src/core/nonInteractiveToolExecutor.test.ts (8 tests) 74ms
✓ src/utils/rateLimit.test.ts (13 tests) 16ms
✓ src/telemetry/config.test.ts (11 tests) 65ms
✓ src/subagents/builtin-agents.test.ts (8 tests) 30ms
✓ src/mcp/google-auth-provider.test.ts (8 tests) 51ms
✓ src/lsp/NativeLspService.test.ts (3 tests) 48ms
✓ src/utils/installationManager.test.ts (4 tests) 12ms
✓ src/hooks/hookSystem.test.ts (15 tests) 54ms
✓ src/core/openaiContentGenerator/provider/modelscope.test.ts (5 tests) 8ms
✓ src/utils/errors.test.ts (12 tests) 12ms
✓ src/utils/runtimeFetchOptions.test.ts (4 tests) 33ms
✓ src/utils/errorParsing.test.ts (11 tests) 5ms
✓ src/tools/mcp-client-manager.test.ts (7 tests) 15ms
✓ src/extension/storage.test.ts (5 tests) 26ms
✓ src/core/geminiRequest.test.ts (12 tests) 5ms
✓ src/utils/toml-to-markdown-converter.test.ts (10 tests) 18ms
✓ src/utils/safeJsonStringify.test.ts (8 tests) 10ms
✓ src/utils/thoughtUtils.test.ts (11 tests) 4ms
✓ src/utils/qwenIgnoreParser.test.ts (2 tests) 18ms
✓ src/utils/fetch.test.ts (3 tests) 46ms
✓ src/utils/nextSpeakerChecker.test.ts (10 tests) 94ms
✓ src/telemetry/telemetry-utils.test.ts (6 tests) 41ms
✓ src/lsp/LspConfigLoader.test.ts (2 tests) 49ms
✓ src/utils/filesearch/result-cache.test.ts (3 tests) 25ms
✓ src/tools/askUserQuestion.test.ts (9 tests) 9ms
✓ src/subagents/types.test.ts (3 tests) 21ms
✓ src/config/storage.test.ts (5 tests) 11ms
✓ src/core/contentGenerator.test.ts (4 tests) 92ms
✓ src/index.test.ts (1 test) 8ms
✓ src/extension/variables.test.ts (1 test) 8ms
✓ src/utils/shellReadOnlyChecker.test.ts (33 tests) 53ms
✓ src/utils/summarizer.test.ts (8 tests) 82ms
✓ src/tools/exitPlanMode.test.ts (16 tests) 31ms
✓ src/tools/web-fetch.test.ts (7 tests) 82ms
✓ src/core/geminiContentGenerator/index.test.ts (1 test) 6ms
✓ src/utils/ripgrepUtils.test.ts (6 tests) 9ms
✓ src/utils/tool-utils.test.ts (19 tests) 24ms
✓ src/telemetry/telemetry.test.ts (2 tests) 27ms
Test Files 174 passed (174)
Tests 3902 passed | 2 skipped (3904)
Start at 07:58:37
Duration 31.52s (transform 36.26s, setup 8.06s, collect 394.88s, tests 46.07s, environment 73ms, prepare 43.11s)
JUNIT report written to /startdir/src/qwen-code/packages/core/junit.xml
% Coverage report from v8
> @qwen-code/sdk@0.1.4 test
> vitest run
RUN v1.6.1 /startdir/src/qwen-code/packages/sdk-typescript
2026-03-14 07:59:12 [ERROR] [ProcessTransport] Failed to initialize CLI process: Transport start aborted
✓ test/unit/cliPath.test.ts (33 tests) 44ms
2026-03-14 07:59:12 [ERROR] [ProcessTransport] Failed to initialize CLI process: Transport start aborted
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process error: Spawn failed
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process exited with code 1
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process terminated by signal SIGTERM
(node:10940) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added to [process]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit
(Use `node --trace-warnings ...` to show where the warning was created)
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process error: Process error
2026-03-14 07:59:12 [DEBUG] [ProcessTransport] Spawning CLI (native): qwen --input-format stream-json --output-format stream-json --channel=SDK
✓ test/unit/ProcessTransport.test.ts (66 tests) 130ms
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process exited with code 1
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process error: Process error
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process exited with code 1
2026-03-14 07:59:12 [ERROR] [ProcessTransport] CLI process terminated by signal SIGKILL
2026-03-14 07:59:12 [INFO] [ProcessTransport] CLI process started successfully
2026-03-14 07:59:12 [DEBUG] [ProcessTransport] Forking CLI (node): /path/to/cli.js --input-format stream-json --output-format stream-json --channel=SDK
2026-03-14 07:59:12 [INFO] [ProcessTransport] CLI process started successfully
✓ test/unit/createSdkMcpServer.test.ts (18 tests) 26ms
2026-03-14 07:59:13 [ERROR] [Query] Control response error for request b7d594a1-cb85-4264-b915-86577e373df6: Test error
2026-03-14 07:59:13 [ERROR] [Query] Initialization error: Test error
✓ test/unit/Stream.test.ts (20 tests) 8ms
2026-03-14 07:59:25 [ERROR] [Query] Initialization error: Query is closed
2026-03-14 07:59:36 [ERROR] [Query] Control response error for request 69c0d236-e9a5-484b-87bd-1ed40f115149: Malformed error
✓ test/unit/Query.test.ts (53 tests) 23689ms
Test Files 5 passed (5)
Tests 190 passed (190)
Start at 07:59:12
Duration 24.53s (transform 990ms, setup 0ms, collect 1.70s, tests 23.90s, environment 1ms, prepare 503ms)
> qwen-code-vscode-ide-companion@0.12.3 test
> vitest run
RUN v3.2.4 /startdir/src/qwen-code/packages/vscode-ide-companion
✓ src/package.test.ts (1 test) 4ms
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > current_mode_update handling > calls onModeChanged callback with mode id
[SessionUpdateHandler] Processing update type: current_mode_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > agent_message_chunk handling > calls onStreamChunk callback with text content
[SessionUpdateHandler] Processing update type: agent_message_chunk
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > agent_message_chunk handling > emits usage metadata when present
[SessionUpdateHandler] Processing update type: agent_message_chunk
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > agent_message_chunk handling > maps SDK usage field names to both SDK and legacy fields
[SessionUpdateHandler] Processing update type: agent_message_chunk
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > tool_call handling > calls onToolCall callback with tool call data
[SessionUpdateHandler] Processing update type: tool_call
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > plan handling > calls onPlan callback with plan entries
[SessionUpdateHandler] Processing update type: plan
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > plan handling > falls back to stream chunk when onPlan is not set
[SessionUpdateHandler] Processing update type: plan
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > available_commands_update handling > calls onAvailableCommands callback with commands
[SessionUpdateHandler] Processing update type: available_commands_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > available_commands_update handling > handles commands with input hint
[SessionUpdateHandler] Processing update type: available_commands_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > available_commands_update handling > does not call callback when onAvailableCommands is not set
[SessionUpdateHandler] Processing update type: available_commands_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > available_commands_update handling > handles empty commands list
[SessionUpdateHandler] Processing update type: available_commands_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > updateCallbacks > updates mode callback and uses new one
[SessionUpdateHandler] Processing update type: current_mode_update
stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > updateCallbacks > updates onAvailableCommands callback
[SessionUpdateHandler] Processing update type: available_commands_update
✓ src/webview/providers/ChatWebviewViewProvider.test.ts (2 tests) 16ms
✓ src/services/qwenSessionUpdateHandler.test.ts (13 tests) 27ms
✓ src/utils/acpModelInfo.test.ts (12 tests) 17ms
✓ src/webview/providers/ChatProviderRegistry.test.ts (2 tests) 4ms
✓ src/utils/errorMessage.test.ts (2 tests) 2ms
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > returns full content when no line/limit specified
[ACP] fs/read_text_file request received for: /test/file.txt
[ACP] Parameters: { line: null, limit: null, sessionId: 'sid' }
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > returns full content when no line/limit specified
[ACP] Successfully read file: /test/file.txt (18 chars)
[ACP] Returning full file content
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > uses 1-based line indexing (ACP spec)
[ACP] fs/read_text_file request received for: /test/file.txt
[ACP] Parameters: { line: 2, limit: 2, sessionId: 'sid' }
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > uses 1-based line indexing (ACP spec)
[ACP] Successfully read file: /test/file.txt (29 chars)
[ACP] Returning 2 lines
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > treats line=1 as first line
[ACP] fs/read_text_file request received for: /test/file.txt
[ACP] Parameters: { line: 1, limit: 1, sessionId: 'sid' }
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > treats line=1 as first line
[ACP] Successfully read file: /test/file.txt (18 chars)
[ACP] Returning 1 lines
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > defaults to line=1 when line is null but limit is set
[ACP] fs/read_text_file request received for: /test/file.txt
[ACP] Parameters: { line: null, limit: 2, sessionId: 'sid' }
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > defaults to line=1 when line is null but limit is set
[ACP] Successfully read file: /test/file.txt (7 chars)
[ACP] Returning 2 lines
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > clamps negative line values to 0
[ACP] fs/read_text_file request received for: /test/file.txt
[ACP] Parameters: { line: -5, limit: null, sessionId: 'sid' }
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > clamps negative line values to 0
[ACP] Successfully read file: /test/file.txt (5 chars)
[ACP] Returning 3 lines
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > propagates ENOENT errors
[ACP] fs/read_text_file request received for: /missing/file.txt
[ACP] Parameters: { line: null, limit: null, sessionId: 'sid' }
stderr | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > propagates ENOENT errors
[ACP] Failed to read file /missing/file.txt: ENOENT
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > normalises VS Code FileNotFound to ENOENT
[ACP] fs/read_text_file request received for: /missing/file.txt
[ACP] Parameters: { line: null, limit: null, sessionId: 'sid' }
stderr | src/services/acpFileHandler.test.ts > AcpFileHandler > handleReadTextFile > normalises VS Code FileNotFound to ENOENT
[ACP] Failed to read file /missing/file.txt: file not found
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleWriteTextFile > creates directory and uses WorkspaceEdit for existing file
[ACP] fs/write_text_file request received for: /test/dir/file.txt
[ACP] Content size: 5 bytes
[ACP] Ensuring directory exists: /test/dir
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleWriteTextFile > creates directory and uses WorkspaceEdit for existing file
[ACP] Successfully wrote file: /test/dir/file.txt
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleWriteTextFile > writes bytes directly for new (non-existing) file
[ACP] fs/write_text_file request received for: /test/dir/newfile.txt
[ACP] Content size: 5 bytes
[ACP] Ensuring directory exists: /test/dir
stdout | src/services/acpFileHandler.test.ts > AcpFileHandler > handleWriteTextFile > writes bytes directly for new (non-existing) file
[ACP] Successfully wrote file: /test/dir/newfile.txt
✓ src/services/acpFileHandler.test.ts (9 tests) 20ms
✓ src/webview/providers/WebViewContent.test.ts (5 tests) 11ms
✓ src/webview/providers/chatViewRegistration.test.ts (6 tests) 10ms
✓ src/commands/index.test.ts (3 tests) 33ms
✓ src/services/acpConnection.test.ts (2 tests) 7ms
stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > filters ignored paths and includes request metadata in workspace files
[FileMessageHandler] handleGetWorkspaceFiles start { query: 'txt', requestId: 7 }
[FileMessageHandler] Searching workspace files for query txt
✓ src/webview/utils/utils.test.ts (15 tests) 37ms
stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > filters ignored paths and includes request metadata in workspace files
[FileMessageHandler] Sent final workspaceFiles 1
✓ src/webview/handlers/FileMessageHandler.test.ts (1 test) 13ms
✓ src/open-files-manager.test.ts (17 tests) 69ms
✓ src/services/qwenAgentManager.test.ts (6 tests) 4ms
✓ src/ide-server.test.ts (13 tests | 1 skipped) 138ms
stderr | src/extension.test.ts > activate > should not show the info message on subsequent activations
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > should register a handler for onDidGrantWorkspaceTrust
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > should register webview view providers for sidebar and secondary positions
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > should launch the Qwen Code when the user clicks the button
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > should show an update notification if a newer version is available
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > should not show an update notification if the version is the same
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > does not show the notification for 'cloudshell'
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > does not show the notification for 'firebasestudio'
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > should not show an update notification if the version is older
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > should execute the install command when the user clicks "Update"
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
stderr | src/extension.test.ts > activate > update notification > should handle fetch errors gracefully
[ReadonlyFileSystemProvider] Instance already exists, replacing with new instance
✓ src/extension.test.ts (12 tests) 80ms
Test Files 17 passed (17)
Tests 120 passed | 1 skipped (121)
Start at 07:59:37
Duration 2.88s (transform 5.47s, setup 0ms, collect 14.48s, tests 491ms, environment 3ms, prepare 4.92s)
==> ERROR: A failure occurred in check().
Aborting...
==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_c32160b4-f9c9-4100-8e0a-4903e5b212ed/build