==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_50eb897e-ab92-4df7-a5ab-12fd05118ad2]...done ==> Making package: qwen-code 0.16.0-1.1 (Fri May 22 00:40:17 2026) ==> Retrieving sources... -> Cloning qwen-code git repo... Cloning into bare repository '/home/alhp/workspace/build/x86-64-v3/qwen-code-0.16.0-1/qwen-code'... ==> Validating source files with sha256sums... qwen-code ... Passed ==> Validating source files with b2sums... qwen-code ... Passed ==> Making package: qwen-code 0.16.0-1.1 (Thu May 21 22:43:24 2026) ==> Checking runtime dependencies... ==> Installing missing dependencies... resolving dependencies... looking for conflicting packages... Package (6) New Version Net Change extra/ada 3.4.4-1 1.08 MiB extra/c-ares 1.34.6-1 0.51 MiB extra/libuv 1.52.1-1 0.64 MiB extra/simdjson 1:4.6.4-1 7.58 MiB extra/nodejs 26.1.0-2 58.28 MiB extra/ripgrep 15.1.0-3 4.03 MiB Total Installed Size: 72.12 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing ada... 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.3.0-1 6.08 MiB extra/nodejs-nopt 10.0.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.35-1 0.15 MiB extra/semver 7.8.0-1 0.10 MiB extra/zlib-ng 2.3.3-1 0.28 MiB extra/git 2.54.0-1 30.26 MiB extra/jq 1.8.1-3 0.46 MiB extra/npm 11.14.1-1 8.70 MiB Total Installed Size: 47.07 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 [installed] 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 [installed] 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/config-array@0.13.0: Use @eslint/config-array instead npm warn deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema 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 1450 packages, and audited 1464 packages in 54s 400 packages are looking for funding run `npm fund` for details 43 vulnerabilities (2 low, 19 moderate, 20 high, 2 critical) To address issues that do not require attention, run: npm audit fix To address all issues (including breaking changes), run: npm audit fix --force Run `npm audit` for details. npm notice npm notice New minor version of npm available! 11.14.1 -> 11.15.0 npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.15.0 npm notice To update run: npm install -g npm@11.15.0 npm notice ==> Starting build()... > @qwen-code/qwen-code@0.16.0 build > cross-env NODE_OPTIONS="--max-old-space-size=3072" node scripts/build.js > @qwen-code/qwen-code@0.16.0 generate > node scripts/generate-git-commit-info.js > @qwen-code/qwen-code-core@0.16.0 build > node ../../scripts/build_package.js Successfully copied files. > @qwen-code/web-templates@0.16.0 build > node build.mjs && tsc --build --clean && tsc Building web-templates... Building insight assets with Vite... vite v5.4.21 building for production... transforming... Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme ✓ 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 403ms Reading generated files... Successfully generated /startdir/src/qwen-code/packages/web-templates/src/generated/insightTemplate.ts Successfully built all web-templates. > @qwen-code/channel-base@0.16.0 build > tsc --build > @qwen-code/channel-telegram@0.16.0 build > tsc --build > @qwen-code/channel-weixin@0.16.0 build > tsc --build > @qwen-code/channel-dingtalk@0.16.0 build > tsc --build > @qwen-code/channel-plugin-example@0.16.0 build > tsc --build > @qwen-code/acp-bridge@0.16.0 build > node ../../scripts/build_package.js Successfully copied files. > @qwen-code/qwen-code@0.16.0 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 (node:1484) [DEP0205] DeprecationWarning: `module.register()` is deprecated. Use `module.registerHooks()` instead. (Use `node --trace-deprecation ...` to show where the warning was created) > @qwen-code/webui@0.16.0 build > vite build vite v5.4.21 building for production... transforming... Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme ✓ 159 modules transformed. rendering chunks... [vite:dts] Start generate declaration files... computing gzip size... dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.js 388.76 kB │ gzip: 97.72 kB │ map: 833.43 kB [vite:dts] Start rollup declaration files... Analysis will use the bundled TypeScript version 5.8.2 [vite:dts] Declaration files built in 2688ms. dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.cjs 398.16 kB │ gzip: 98.43 kB │ map: 838.46 kB dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.umd.js 421.21 kB │ gzip: 99.68 kB │ map: 841.50 kB ✓ built in 4.76s > @qwen-code/sdk@0.1.7 build > node scripts/build.js Compiling input files... Processing src/index.ts Writing src/index.ts -> dist/index.d.ts Checking generated files... Compiler option "skipLibCheck" is disabled to properly check generated output Done in 15.39s > qwen-code-vscode-ide-companion@0.16.0 build > npm run build:dev > qwen-code-vscode-ide-companion@0.16.0 build:dev > npm run check-types && npm run lint && node esbuild.js > qwen-code-vscode-ide-companion@0.16.0 check-types > tsc --noEmit > qwen-code-vscode-ide-companion@0.16.0 lint > eslint src /startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts 154:54 warning Expected { after 'while' condition curly 431:61 warning Expected { after 'if' condition curly 495:24 warning Expected { after 'if' condition curly 569:26 warning Expected { after 'if' condition curly 700:20 warning Expected { after 'if' condition curly /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/AuthMessageHandler.ts 181:37 warning Expected { after 'if' condition curly 214:24 warning Expected { after 'if' condition curly 264:22 warning Expected { after 'if' condition curly 283:24 warning Expected { after 'if' condition curly 303:37 warning Expected { after 'if' condition curly 332:23 warning Expected { after 'if' condition curly 338:18 warning Expected { after 'if' condition curly 364:24 warning Expected { after 'if' condition curly 402:28 warning Expected { after 'if' condition curly /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts 1375:35 warning Expected { after 'if' condition curly ✖ 15 problems (0 errors, 15 warnings) 0 errors and 15 warnings potentially fixable with the `--fix` option. Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme > @qwen-code/qwen-code@0.16.0 bundle > npm run generate && node esbuild.config.js && node scripts/copy_bundle_assets.js > @qwen-code/qwen-code@0.16.0 generate > node scripts/generate-git-commit-info.js Copied sandbox profiles to dist/ Copying vendor directory... Copied vendor directory to dist/ Copied bundled skills to dist/bundled/ Copied docs/users/ to dist/bundled/qc-helper/docs/ Copied builtin locales to dist/locales/ ✅ All bundle assets copied to dist/ > @qwen-code/qwen-code@0.16.0 prepare > husky && npm run build && npm run bundle > @qwen-code/qwen-code@0.16.0 build > cross-env NODE_OPTIONS="--max-old-space-size=3072" node scripts/build.js > @qwen-code/qwen-code@0.16.0 generate > node scripts/generate-git-commit-info.js > @qwen-code/qwen-code-core@0.16.0 build > node ../../scripts/build_package.js Successfully copied files. > @qwen-code/web-templates@0.16.0 build > node build.mjs && tsc --build --clean && tsc Building web-templates... Building insight assets with Vite... vite v5.4.21 building for production... transforming... Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme ✓ 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 454ms Reading generated files... Successfully generated /startdir/src/qwen-code/packages/web-templates/src/generated/insightTemplate.ts Successfully built all web-templates. > @qwen-code/channel-base@0.16.0 build > tsc --build > @qwen-code/channel-telegram@0.16.0 build > tsc --build > @qwen-code/channel-weixin@0.16.0 build > tsc --build > @qwen-code/channel-dingtalk@0.16.0 build > tsc --build > @qwen-code/channel-plugin-example@0.16.0 build > tsc --build > @qwen-code/acp-bridge@0.16.0 build > node ../../scripts/build_package.js Successfully copied files. > @qwen-code/qwen-code@0.16.0 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 (node:2121) [DEP0205] DeprecationWarning: `module.register()` is deprecated. Use `module.registerHooks()` instead. (Use `node --trace-deprecation ...` to show where the warning was created) > @qwen-code/webui@0.16.0 build > vite build vite v5.4.21 building for production... transforming... Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme ✓ 159 modules transformed. rendering chunks... [vite:dts] Start generate declaration files... computing gzip size... dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.js 388.76 kB │ gzip: 97.72 kB │ map: 833.43 kB [vite:dts] Start rollup declaration files... Analysis will use the bundled TypeScript version 5.8.2 [vite:dts] Declaration files built in 4425ms. dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.cjs 398.16 kB │ gzip: 98.43 kB │ map: 838.46 kB dist/styles.css 83.17 kB │ gzip: 15.47 kB dist/index.umd.js 421.21 kB │ gzip: 99.68 kB │ map: 841.50 kB ✓ built in 6.50s > @qwen-code/sdk@0.1.7 build > node scripts/build.js Compiling input files... Processing src/index.ts Writing src/index.ts -> dist/index.d.ts Checking generated files... Compiler option "skipLibCheck" is disabled to properly check generated output Done in 15.02s > qwen-code-vscode-ide-companion@0.16.0 build > npm run build:dev > qwen-code-vscode-ide-companion@0.16.0 build:dev > npm run check-types && npm run lint && node esbuild.js > qwen-code-vscode-ide-companion@0.16.0 check-types > tsc --noEmit > qwen-code-vscode-ide-companion@0.16.0 lint > eslint src /startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts 154:54 warning Expected { after 'while' condition curly 431:61 warning Expected { after 'if' condition curly 495:24 warning Expected { after 'if' condition curly 569:26 warning Expected { after 'if' condition curly 700:20 warning Expected { after 'if' condition curly /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/AuthMessageHandler.ts 181:37 warning Expected { after 'if' condition curly 214:24 warning Expected { after 'if' condition curly 264:22 warning Expected { after 'if' condition curly 283:24 warning Expected { after 'if' condition curly 303:37 warning Expected { after 'if' condition curly 332:23 warning Expected { after 'if' condition curly 338:18 warning Expected { after 'if' condition curly 364:24 warning Expected { after 'if' condition curly 402:28 warning Expected { after 'if' condition curly /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts 1375:35 warning Expected { after 'if' condition curly ✖ 15 problems (0 errors, 15 warnings) 0 errors and 15 warnings potentially fixable with the `--fix` option. Browserslist: browsers data (caniuse-lite) is 6 months old. Please run: npx update-browserslist-db@latest Why you should do it regularly: https://github.com/browserslist/update-db#readme > @qwen-code/qwen-code@0.16.0 bundle > npm run generate && node esbuild.config.js && node scripts/copy_bundle_assets.js > @qwen-code/qwen-code@0.16.0 generate > node scripts/generate-git-commit-info.js Copied sandbox profiles to dist/ Copying vendor directory... Copied vendor directory to dist/ Copied bundled skills to dist/bundled/ Copied docs/users/ to dist/bundled/qc-helper/docs/ Copied builtin locales to dist/locales/ ✅ All bundle assets copied to dist/ npm notice npm notice 📦 @qwen-code/qwen-code@0.16.0 npm notice Tarball Contents npm notice 11.4kB LICENSE npm notice 21.2kB README.md npm notice 8.8kB dist/bundled/batch/SKILL.md npm notice 3.6kB dist/bundled/loop/SKILL.md npm notice 860B dist/bundled/qc-helper/docs/_meta.ts npm notice 14.9kB dist/bundled/qc-helper/docs/common-workflow.md npm notice 205B dist/bundled/qc-helper/docs/configuration/_meta.ts npm notice 15.9kB dist/bundled/qc-helper/docs/configuration/auth.md npm notice 32.6kB dist/bundled/qc-helper/docs/configuration/model-providers.md npm notice 2.2kB dist/bundled/qc-helper/docs/configuration/qwen-ignore.md npm notice 151.3kB dist/bundled/qc-helper/docs/configuration/settings.md npm notice 7.9kB dist/bundled/qc-helper/docs/configuration/themes.md npm notice 3.3kB dist/bundled/qc-helper/docs/configuration/trusted-folders.md npm notice 169B dist/bundled/qc-helper/docs/extension/_meta.ts npm notice 10.2kB dist/bundled/qc-helper/docs/extension/extension-releasing.md npm notice 9.3kB dist/bundled/qc-helper/docs/extension/getting-started-extensions.md npm notice 15.9kB dist/bundled/qc-helper/docs/extension/introduction.md npm notice 804B dist/bundled/qc-helper/docs/features/_meta.ts npm notice 14.2kB dist/bundled/qc-helper/docs/features/approval-mode.md npm notice 12.4kB dist/bundled/qc-helper/docs/features/arena.md npm notice 10.5kB dist/bundled/qc-helper/docs/features/auto-mode.md npm notice 134B dist/bundled/qc-helper/docs/features/channels/_meta.ts npm notice 5.8kB dist/bundled/qc-helper/docs/features/channels/dingtalk.md npm notice 15.6kB dist/bundled/qc-helper/docs/features/channels/overview.md npm notice 3.5kB dist/bundled/qc-helper/docs/features/channels/plugins.md npm notice 4.8kB dist/bundled/qc-helper/docs/features/channels/telegram.md npm notice 4.5kB dist/bundled/qc-helper/docs/features/channels/weixin.md npm notice 3.2kB dist/bundled/qc-helper/docs/features/checkpointing.md npm notice 16.5kB dist/bundled/qc-helper/docs/features/code-review.md npm notice 25.7kB dist/bundled/qc-helper/docs/features/commands.md npm notice 21.3kB dist/bundled/qc-helper/docs/features/dual-output.md npm notice 4.6kB dist/bundled/qc-helper/docs/features/followup-suggestions.md npm notice 14.3kB dist/bundled/qc-helper/docs/features/headless.md npm notice 40.6kB dist/bundled/qc-helper/docs/features/hooks.md npm notice 8.5kB dist/bundled/qc-helper/docs/features/language.md npm notice 15.7kB dist/bundled/qc-helper/docs/features/lsp.md npm notice 7.4kB dist/bundled/qc-helper/docs/features/markdown-rendering.md npm notice 20.8kB dist/bundled/qc-helper/docs/features/mcp.md npm notice 6.4kB dist/bundled/qc-helper/docs/features/memory.md npm notice 8.4kB dist/bundled/qc-helper/docs/features/sandbox.md npm notice 7.1kB dist/bundled/qc-helper/docs/features/scheduled-tasks.md npm notice 9.6kB dist/bundled/qc-helper/docs/features/skills.md npm notice 14.5kB dist/bundled/qc-helper/docs/features/status-line.md npm notice 16.7kB dist/bundled/qc-helper/docs/features/structured-output.md npm notice 22.9kB dist/bundled/qc-helper/docs/features/sub-agents.md npm notice 2.3kB dist/bundled/qc-helper/docs/features/tips.md npm notice 1.4kB dist/bundled/qc-helper/docs/features/token-caching.md npm notice 10.3kB dist/bundled/qc-helper/docs/features/tool-use-summaries.md npm notice 103B dist/bundled/qc-helper/docs/ide-integration/_meta.ts npm notice 10.2kB dist/bundled/qc-helper/docs/ide-integration/ide-companion-spec.md npm notice 7.9kB dist/bundled/qc-helper/docs/ide-integration/ide-integration.md npm notice 12.8kB dist/bundled/qc-helper/docs/integration-github-action.md npm notice 2.6kB dist/bundled/qc-helper/docs/integration-jetbrains.md npm notice 1.5kB dist/bundled/qc-helper/docs/integration-vscode.md npm notice 2.3kB dist/bundled/qc-helper/docs/integration-zed.md npm notice 4.7kB dist/bundled/qc-helper/docs/overview.md npm notice 8.7kB dist/bundled/qc-helper/docs/quickstart.md npm notice 44.6kB dist/bundled/qc-helper/docs/qwen-serve.md npm notice 66B dist/bundled/qc-helper/docs/reference/_meta.ts npm notice 11.2kB dist/bundled/qc-helper/docs/reference/keyboard-shortcuts.md npm notice 122B dist/bundled/qc-helper/docs/support/_meta.ts npm notice 6.9kB dist/bundled/qc-helper/docs/support/tos-privacy.md npm notice 10.2kB dist/bundled/qc-helper/docs/support/troubleshooting.md npm notice 1.2kB dist/bundled/qc-helper/docs/support/Uninstall.md npm notice 9.3kB dist/bundled/qc-helper/SKILL.md npm notice 24.1kB dist/bundled/review/DESIGN.md npm notice 51.8kB dist/bundled/review/SKILL.md npm notice 12.2kB dist/bundled/stuck/SKILL.md npm notice 1.3kB dist/chunks/agent-N5462U6U.js npm notice 198.3kB dist/chunks/anthropicContentGenerator-RQJNXJIY.js npm notice 10.7kB dist/chunks/askUserQuestion-PQPMPNM3.js npm notice 109.4kB dist/chunks/ca-UZ7BANMN.js npm notice 304.3kB dist/chunks/chunk-2G2LEWTK.js npm notice 953B dist/chunks/chunk-2PSWA5ID.js npm notice 12.5kB dist/chunks/chunk-4AOCVI6J.js npm notice 233.0kB dist/chunks/chunk-4CGOWHKM.js npm notice 260.8kB dist/chunks/chunk-7RYW5LQV.js npm notice 11.4kB dist/chunks/chunk-57KN7IJW.js npm notice 548B dist/chunks/chunk-77WXWU44.js npm notice 770B dist/chunks/chunk-A4BMJM77.js npm notice 3.4MB dist/chunks/chunk-AMUI2MSA.js npm notice 3.3kB dist/chunks/chunk-BR4QREVK.js npm notice 9.6kB dist/chunks/chunk-C6WMLUNB.js npm notice 2.7kB dist/chunks/chunk-CAVZVZX6.js npm notice 14.1kB dist/chunks/chunk-CSWBPY3P.js npm notice 1.9kB dist/chunks/chunk-D5NTAHYL.js npm notice 20.3kB dist/chunks/chunk-DMIMF3CG.js npm notice 793.8kB dist/chunks/chunk-E7E2MFYM.js npm notice 1.6kB dist/chunks/chunk-EM6ETG2K.js npm notice 9.4kB dist/chunks/chunk-F23NCRJ2.js npm notice 82.0kB dist/chunks/chunk-FFWFWFIJ.js npm notice 4.5kB dist/chunks/chunk-G7YTSRES.js npm notice 63.4kB dist/chunks/chunk-GGNTZ2NH.js npm notice 756B dist/chunks/chunk-IWKSG2AR.js npm notice 2.5kB dist/chunks/chunk-J2S4EL5Y.js npm notice 542.0kB dist/chunks/chunk-K5PGHDBN.js npm notice 431.5kB dist/chunks/chunk-KQIKOTQJ.js npm notice 4.6kB dist/chunks/chunk-KXZ4TJB4.js npm notice 5.5kB dist/chunks/chunk-L5E26RN6.js npm notice 43.4kB dist/chunks/chunk-MAY32HXD.js npm notice 706B dist/chunks/chunk-MLZQVCF3.js npm notice 4.2kB dist/chunks/chunk-O4PICXES.js npm notice 565B dist/chunks/chunk-OFEVLU4C.js npm notice 93.2kB dist/chunks/chunk-P3MYAZBY.js npm notice 5.7kB dist/chunks/chunk-PR4T27R7.js npm notice 577.1kB dist/chunks/chunk-PVVL5Q3W.js npm notice 20.2kB dist/chunks/chunk-QN5NZ3UQ.js npm notice 61.0kB dist/chunks/chunk-QWSRH265.js npm notice 126.8kB dist/chunks/chunk-RDYWTWEM.js npm notice 1.0MB dist/chunks/chunk-T4VD6OJ4.js npm notice 1.2kB dist/chunks/chunk-TW522KN6.js npm notice 78.6kB dist/chunks/chunk-UFC57OYT.js npm notice 32.2kB dist/chunks/chunk-USE2VQ5P.js npm notice 3.4kB dist/chunks/chunk-UWCTAVOD.js npm notice 741.3kB dist/chunks/chunk-V3MVJROM.js npm notice 4.3MB dist/chunks/chunk-WTR4XQ4U.js npm notice 30.4kB dist/chunks/chunk-XP27SJMH.js npm notice 2.4kB dist/chunks/chunk-YJLGXDQJ.js npm notice 18.7kB dist/chunks/chunk-ZERZSAZL.js npm notice 1.2kB dist/chunks/contextCommand-3WAHKUYB.js npm notice 6.9kB dist/chunks/cron-create-IGYXQVG4.js npm notice 2.2kB dist/chunks/cron-delete-ETKIZCWT.js npm notice 2.2kB dist/chunks/cron-list-BVCUSWRU.js npm notice 112.7kB dist/chunks/de-V4IE2OOZ.js npm notice 874.8kB dist/chunks/devtools-WN62SQPV.js npm notice 20.4kB dist/chunks/dist-4L54HRX2.js npm notice 258B dist/chunks/dist-63IS3ZMI.js npm notice 496.0kB dist/chunks/dist-BXDUQ2QY.js npm notice 213.3kB dist/chunks/dist-MN2PDDPR.js npm notice 31.6kB dist/chunks/edit-GHNGTQAU.js npm notice 107.2kB dist/chunks/en-HGJ2SPLM.js npm notice 8.2kB dist/chunks/enter-worktree-F6ZZSMNS.js npm notice 12.7kB dist/chunks/exit-worktree-E6667K4D.js npm notice 7.7kB dist/chunks/exitPlanMode-DYBJDBGE.js npm notice 4.8kB dist/chunks/fileFromPath-IBEHA3CO.js npm notice 115.8kB dist/chunks/fr-CJULI7ZX.js npm notice 7.8kB dist/chunks/geminiContentGenerator-ZGPNBFDS.js npm notice 1.5kB dist/chunks/getMachineId-bsd-GS3V2GK7.js npm notice 1.5kB dist/chunks/getMachineId-darwin-ZQB4Q7EW.js npm notice 1.3kB dist/chunks/getMachineId-linux-JQ4NN4DN.js npm notice 1.0kB dist/chunks/getMachineId-unsupported-U7H4V4HJ.js npm notice 1.7kB dist/chunks/getMachineId-win-VHUZGBQ3.js npm notice 10.3kB dist/chunks/glob-TM4E4THB.js npm notice 19.2kB dist/chunks/grep-TW3MZCHM.js npm notice 153.7kB dist/chunks/ja-L7CHRQEW.js npm notice 270B dist/chunks/keychain-token-storage-335UOLJ6.js npm notice 1.5MB dist/chunks/lowlight-FYAAUU5J.js npm notice 9.3kB dist/chunks/ls-7HD6XG3V.js npm notice 35.5kB dist/chunks/lsp-ZZSFCIWD.js npm notice 20.8kB dist/chunks/monitor-HF4OKFKL.js npm notice 12.1kB dist/chunks/multipart-parser-3QWGTLK3.js npm notice 12.1kB dist/chunks/multipart-parser-IXGBIOIN.js npm notice 26.4kB dist/chunks/notebook-edit-HGU2A2VN.js npm notice 1.5kB dist/chunks/openaiContentGenerator-NYS3COGH.js npm notice 111.8kB dist/chunks/pt-M6JULLEQ.js npm notice 6.6kB dist/chunks/qwenContentGenerator-GWNEEEEQ.js npm notice 1.1kB dist/chunks/qwenOAuth2-EEJGROP7.js npm notice 614B dist/chunks/read-file-GBMKOI5C.js npm notice 1.1kB dist/chunks/ripGrep-L36NH3OW.js npm notice 273.4kB dist/chunks/ru-QILM4HBC.js npm notice 5.0kB dist/chunks/send-message-ULK4MQXJ.js npm notice 1.2MB dist/chunks/serve-KKWADSU6.js npm notice 1.3kB dist/chunks/shell-5AKMBK6O.js npm notice 14.2kB dist/chunks/skill-KJF7QFYA.js npm notice 47.4kB dist/chunks/src-IPWIHNMI.js npm notice 47.4kB dist/chunks/src-TMOD5X6F.js npm notice 44.0kB dist/chunks/src-YWJXHCT7.js npm notice 368B dist/chunks/syntheticOutput-IS2X5OZ2.js npm notice 7.3kB dist/chunks/task-stop-7QSJGSSP.js npm notice 20.8kB dist/chunks/todoWrite-7CVACFUX.js npm notice 13.0kB dist/chunks/tool-search-VQUQ7734.js npm notice 1.9MB dist/chunks/tree-sitter-bash-EZ4S5QRV.js npm notice 254.7kB dist/chunks/tree-sitter-G7JNPPOS.js npm notice 202B dist/chunks/undici-4ARNOH74.js npm notice 259.9kB dist/chunks/web-fetch-ENQ2I5JA.js npm notice 16.3kB dist/chunks/write-file-QM7NDQFO.js npm notice 131.1kB dist/chunks/zh-PWL2NKY3.js npm notice 122.1kB dist/chunks/zh-TW-S3YGWICZ.js npm notice 6.9MB dist/cli.js npm notice 108.8kB dist/locales/ca.js npm notice 112.7kB dist/locales/de.js npm notice 108.3kB dist/locales/en.js npm notice 114.3kB dist/locales/fr.js npm notice 108.8kB dist/locales/ja.js npm notice 110.3kB dist/locales/pt.js npm notice 141.1kB dist/locales/ru.js npm notice 92.9kB dist/locales/zh-TW.js npm notice 101.7kB dist/locales/zh.js npm notice 1.0kB dist/sandbox-macos-permissive-closed.sb npm notice 899B dist/sandbox-macos-permissive-open.sb npm notice 1.3kB dist/sandbox-macos-permissive-proxied.sb npm notice 3.3kB dist/sandbox-macos-restrictive-closed.sb npm notice 3.4kB dist/sandbox-macos-restrictive-open.sb npm notice 3.6kB dist/sandbox-macos-restrictive-proxied.sb npm notice 4.5MB dist/vendor/ripgrep/arm64-darwin/rg npm notice 4.8MB dist/vendor/ripgrep/arm64-linux/rg npm notice 126B dist/vendor/ripgrep/COPYING npm notice 4.7MB dist/vendor/ripgrep/x64-darwin/rg npm notice 5.7MB dist/vendor/ripgrep/x64-linux/rg npm notice 5.4MB dist/vendor/ripgrep/x64-win32/rg.exe npm notice 1.4MB dist/vendor/tree-sitter/tree-sitter-bash.wasm npm notice 190.8kB dist/vendor/tree-sitter/tree-sitter.wasm npm notice 8.0kB package.json npm notice Bundled Dependencies npm notice dom-accessibility-api npm notice @alcalzone/ansi-tokenize npm notice @babel/code-frame npm notice @babel/helper-validator-identifier npm notice @babel/runtime npm notice @kwsites/file-exists npm notice @kwsites/promise-deferred npm notice @lydell/node-pty-linux-x64 npm notice @lydell/node-pty npm notice @testing-library/dom npm notice @types/aria-query npm notice ansi-escapes npm notice ansi-regex npm notice aria-query npm notice auto-bind npm notice cli-cursor npm notice code-excerpt npm notice convert-to-spaces npm notice debug npm notice dequal npm notice environment npm notice es-toolkit npm notice get-east-asian-width npm notice indent-string npm notice ink npm notice lz-string npm notice mimic-fn npm notice onetime npm notice patch-console npm notice picocolors npm notice react-reconciler npm notice restore-cursor npm notice scheduler npm notice stack-utils npm notice strip-ansi npm notice tagged-tag npm notice terminal-size npm notice yoga-layout npm notice ms npm notice simple-git npm notice Tarball Details npm notice name: @qwen-code/qwen-code npm notice version: 0.16.0 npm notice filename: qwen-code-qwen-code-0.16.0.tgz npm notice package size: 18.9 MB npm notice unpacked size: 68.4 MB npm notice shasum: 089fc580b68383d6f70522015b6ce4cbe26dcb77 npm notice integrity: sha512-ci+ZFDuZypWkV[...]bPUHyaK+6WUfA== npm notice bundled deps: 40 npm notice bundled files: 0 npm notice own files: 4411 npm notice total files: 4411 npm notice qwen-code-qwen-code-0.16.0.tgz ==> Starting check()... > @qwen-code/acp-bridge@0.16.0 test > vitest run --exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts RUN v3.2.4 /startdir/src/qwen-code/packages/acp-bridge ✓ src/eventBus.test.ts (20 tests) 42ms ✓ src/status.test.ts (16 tests) 4ms ✓ src/inMemoryChannel.test.ts (8 tests) 110ms Test Files 3 passed (3) Tests 44 passed (44) Start at 22:46:24 Duration 2.13s (transform 1.16s, setup 0ms, collect 3.68s, tests 157ms, environment 0ms, prepare 192ms) > @qwen-code/qwen-code@0.16.0 test > vitest run --exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts RUN v3.2.4 /startdir/src/qwen-code/packages/cli Coverage enabled with v8 ✓ src/serve/auth/deviceFlow.test.ts (42 tests) 16ms ✓ src/ui/commands/exportCommand.test.ts (40 tests) 70ms (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 end listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (Use `node --trace-warnings ...` to show where the warning was created) (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 end listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 error listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 drain listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 finish listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 error listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit (node:3163) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 data listeners added to [Socket]. MaxListeners is 10. Use emitter.setMaxListeners() to increase limit qwen serve: getMcpClientAccounting failed: config.getToolRegistry is not a function ✓ src/acp-integration/acpAgent.test.ts (55 tests) 2721ms ✓ src/utils/modelConfigUtils.test.ts (46 tests) 29ms ✓ src/ui/components/shared/vim-buffer-actions.test.ts (74 tests) 17ms ✓ src/services/insight/generators/DataProcessor.test.ts (38 tests) 82ms ✓ src/ui/hooks/useStatusLine.test.ts (59 tests) 1949ms ✓ useStatusLine > config validation > returns null when no statusLine config is set 1850ms ✓ src/ui/components/shared/text-buffer.test.ts (132 tests) 131ms ✓ src/ui/hooks/vim.test.ts (89 tests) 302ms ✓ src/services/FileCommandLoader.test.ts (40 tests) 81ms ✓ src/serve/fs/workspaceFileSystem.test.ts (63 tests) 151ms qwen serve: statusProvider.getEnvStatus failed; falling back to idle envelope: boom — env collector crashed qwen serve: statusProvider.getDaemonPreflightCells failed; falling back to empty daemon cells: boom — preflight collector crashed ✓ src/config/settings.test.ts (108 tests) 87ms qwen serve: workspace_mismatch (POST /session): daemon bound to "/work/bound", rejected "/work/different" qwen serve: bridge error (POST /session): Error: boom at spawnImpl (/startdir/src/qwen-code/packages/cli/src/serve/server.test.ts:1600:17) at Object.spawnOrAttach (/startdir/src/qwen-code/packages/cli/src/serve/server.test.ts:561:28) at /startdir/src/qwen-code/packages/cli/src/serve/server.ts:929:36 at Layer.handleRequest (/startdir/src/qwen-code/node_modules/router/lib/layer.js:152:17) at next (/startdir/src/qwen-code/node_modules/router/lib/route.js:157:13) at passthrough (/startdir/src/qwen-code/packages/cli/src/serve/auth.ts:248:8) at Layer.handleRequest (/startdir/src/qwen-code/node_modules/router/lib/layer.js:152:17) at next (/startdir/src/qwen-code/node_modules/router/lib/route.js:157:13) at Route.dispatch (/startdir/src/qwen-code/node_modules/router/lib/route.js:117:3) at handle (/startdir/src/qwen-code/node_modules/router/index.js:435:11) qwen serve: workspace_mismatch (POST /session): daemon bound to "/work/bound", rejected "/work/different" qwen serve: channel exited (code=none, signal=none, 1 session(s) torn down) ✓ src/ui/hooks/useGeminiStream.test.tsx (97 tests) 816ms qwen serve: bridge error (POST /session/:id/prompt session=session-A): Error: agent crashed at promptImpl (/startdir/src/qwen-code/packages/cli/src/serve/server.test.ts:1948:17) at Object.sendPrompt (/startdir/src/qwen-code/packages/cli/src/serve/server.test.ts:582:14) at /startdir/src/qwen-code/packages/cli/src/serve/server.ts:1156:35 at Layer.handleRequest (/startdir/src/qwen-code/node_modules/router/lib/layer.js:152:17) at next (/startdir/src/qwen-code/node_modules/router/lib/route.js:157:13) at passthrough (/startdir/src/qwen-code/packages/cli/src/serve/auth.ts:248:8) at Layer.handleRequest (/startdir/src/qwen-code/node_modules/router/lib/layer.js:152:17) at next (/startdir/src/qwen-code/node_modules/router/lib/route.js:157:13) at Route.dispatch (/startdir/src/qwen-code/node_modules/router/lib/route.js:117:3) at handle (/startdir/src/qwen-code/node_modules/router/index.js:435:11) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:36179 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 1 session(s) torn down) ✓ src/acp-integration/session/Session.test.ts (73 tests) 483ms qwen serve: channel exited (code=none, signal=none, 1 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: /health deep probe failed: bridge wedged qwen serve listening on http://127.0.0.1:38249 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:35355 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:37341 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: --require-auth enabled (bearer token mandatory on every route, including loopback /health). qwen serve listening on http://0.0.0.0:45925 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve listening on http://127.0.0.1:42929 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:41285 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:35079 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:40001 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://Localhost:41051 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://[::1]:38777 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://[::1]:43005 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:37041 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:46703 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:44749 (mode=http-bridge, workspace=/tmp/qwen-runqwen-fs-sK2zZM) qwen serve: bound to workspace "/tmp/qwen-runqwen-fs-sK2zZM" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:39245 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:46353 (mode=http-bridge, workspace=/tmp/qwen-runqwen-trust-TTUIK8) qwen serve: bound to workspace "/tmp/qwen-runqwen-trust-TTUIK8" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:41309 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:40733 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:46059 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:45777 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:38095 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:43115 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:42113 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:42847 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: rejected ?maxQueued "" (not a decimal integer) qwen serve listening on http://127.0.0.1:44471 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: rejected ?maxQueued "abc" (not a decimal integer) qwen serve listening on http://127.0.0.1:34787 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: rejected ?maxQueued "0" (outside [16, 2048]) qwen serve: rejected ?maxQueued "15" (outside [16, 2048]) qwen serve: rejected ?maxQueued "2049" (outside [16, 2048]) qwen serve: rejected ?maxQueued "9999" (outside [16, 2048]) qwen serve listening on http://127.0.0.1:35003 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:38185 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: closing session "sess:/work/a" qwen serve: dropping mcp guardrail extNotification for tombstoned session "sess:/work/a" (post-close stale event) qwen serve listening on http://127.0.0.1:43319 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve listening on http://127.0.0.1:39033 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve listening on http://127.0.0.1:43707 (mode=http-bridge, workspace=/startdir/src/qwen-code/packages/cli) qwen serve: bound to workspace "/startdir/src/qwen-code/packages/cli" qwen serve: bearer auth disabled (loopback default). Set QWEN_SERVER_TOKEN to enable. qwen serve: rejected Last-Event-ID "abc" (not a decimal integer) qwen serve: rejected Last-Event-ID "-1" (not a decimal integer) qwen serve: rejected Last-Event-ID "1.5e10z" (not a decimal integer) qwen serve: closing session "sess:/work/a" qwen serve: WARNING aliveChannels.size=3 (expected 1, max 2 during killSession-then-spawnOrAttach overlap) — possible channel leak; check that prior channels' channel.exited fired and the handler ran cleanup. qwen serve: fs audit emit is the default no-op — 1 event(s) dropped so far. Latest type=fs.denied (errorKind=untrusted_workspace intent=write pathHash=6faa0c36aedae263). Inject deps.fsFactory in createServeApp to wire audit into the EventBus. [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=6ab17632... clientId=- status=started expiresInMs=599999 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=8e75be93... clientId=- status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=3b0fccee... clientId=sdk-A status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=3b0fccee... clientId=sdk-B status=started hint="take-over (per-provider singleton; original initiator=sdk-A)" [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=292e2afe... clientId=- status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=2c5e47e7... clientId=- status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=35d2c215... clientId=- status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=35d2c215... clientId=- status=cancelled [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=1fc075ae... clientId=- status=started expiresInMs=600000 qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: channel exited (code=none, signal=none, 3 session(s) torn down) qwen serve: closing session "sess:/work/a" qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: closing session "sess:/work/a" qwen serve: updated session metadata "sess:/work/a" displayName=set qwen serve: closing session "sess:/work/a" qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) qwen serve: closing session "sess:/work/a" qwen serve: channel exited (code=none, signal=none, 0 session(s) torn down) [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=4d5fe6d8... clientId=sdk-A status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=d190cb5b... clientId=- status=started expiresInMs=600000 [serve] auth.device-flow: provider=qwen-oauth deviceFlowId=c0519a3a... clientId=- status=started expiresInMs=600000 ✓ src/ui/contexts/KeypressContext.test.tsx (93 tests) 1598ms ✓ KeypressContext - Kitty Protocol > Enter key handling > auto-recovers from a stuck paste mode via idle timeout 1253ms ✓ src/serve/httpAcpBridge.test.ts (161 tests) 1367ms ✓ src/serve/server.test.ts (225 tests) 1039ms ✓ src/utils/settingsUtils.test.ts (78 tests) 17ms ✓ src/ui/hooks/atCommandProcessor.test.ts (43 tests) 113ms ✓ src/utils/nonInteractiveHelpers.test.ts (60 tests) 25ms ✓ src/config/config.test.ts (220 tests | 2 skipped) 901ms ✓ src/nonInteractive/io/BaseJsonOutputAdapter.test.ts (96 tests) 40ms qwen serve: DELETE /workspace/agents/"partial-target" partial — removed=project remaining=user:/tmp/qwen-serve-agents-CG2iTb/global/agents/partial-target.md ✓ src/ui/hooks/slashCommandProcessor.test.ts (46 tests) 2434ms ✓ src/serve/workspaceAgents.test.ts (38 tests) 267ms ✓ src/nonInteractiveCli.test.ts (46 tests | 1 skipped) 356ms ✓ src/ui/commands/doctorCommand.test.ts (36 tests) 55ms ✓ src/ui/hooks/useSelectionList.test.ts (46 tests) 82ms ✓ src/ui/hooks/useSlashCompletion.test.ts (29 tests) 658ms ✓ src/nonInteractive/io/StreamJsonOutputAdapter.test.ts (50 tests) 31ms ✓ src/nonInteractive/control/ControlDispatcher.test.ts (35 tests) 36ms ✓ src/utils/memoryDiagnostics.test.ts (23 tests) 41ms ✓ src/nonInteractive/session.test.ts (27 tests) 353ms ✓ src/utils/errors.test.ts (42 tests) 48ms ✓ src/ui/components/messages/ToolGroupMessage.test.tsx (32 tests) 751ms ✓ src/ui/commands/languageCommand.test.ts (48 tests) 59ms ✓ src/ui/components/SettingsDialog.test.tsx (53 tests) 4129ms ✓ SettingsDialog > Settings Toggling > should sync compact mode with CompactModeContext when toggled 485ms ✓ SettingsDialog > String Settings Editing > should allow editing and committing a string setting 408ms ✓ src/ui/daemon/DaemonTuiAdapter.test.ts (14 tests) 32ms ✓ src/services/prompt-processors/shellProcessor.test.ts (34 tests) 52ms ✓ src/ui/utils/osc8.test.ts (79 tests) 14ms ✓ src/ui/components/shared/text-buffer-external-editor.test.ts (36 tests) 78ms (node:4215) 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/components/StandaloneSessionPicker.test.tsx (19 tests) 487ms ✓ src/ui/utils/mermaidImageRenderer.test.ts (25 tests) 874ms ✓ src/ui/components/messages/ToolMessage.test.tsx (35 tests) 935ms ✓ src/ui/utils/mergeCompactToolGroups.test.ts (32 tests) 9ms ✓ src/ui/hooks/useToolScheduler.test.ts (17 tests) 57ms ✓ src/nonInteractive/io/JsonOutputAdapter.test.ts (35 tests) 20ms ✓ src/acp-integration/session/SubAgentTracker.test.ts (24 tests) 262ms ✓ src/ui/utils/commandUtils.test.ts (51 tests) 49ms ✓ src/ui/components/background-view/LiveAgentPanel.test.tsx (25 tests) 749ms ✓ src/acp-integration/session/emitters/ToolCallEmitter.test.ts (34 tests) 20ms ✓ src/ui/utils/TableRenderer.test.tsx (60 tests | 1 skipped) 1644ms ✓ src/ui/hooks/shellCommandProcessor.test.ts (20 tests) 402ms ✓ src/ui/hooks/useBackgroundTaskView.test.ts (15 tests) 46ms ✓ src/ui/components/background-view/BackgroundTasksDialog.test.tsx (30 tests) 2021ms ✓ src/ui/commands/diffCommand.test.ts (25 tests) 22ms ✓ src/ui/commands/copyCommand.test.ts (25 tests) 29ms ✓ src/ui/hooks/useCommandCompletion.test.ts (22 tests) 86ms ✓ src/ui/utils/customBanner.test.ts (40 tests) 32ms ✓ src/ui/utils/MarkdownDisplay.test.tsx (101 tests) 2893ms ✓ src/ui/commands/modelCommand.test.ts (20 tests) 34ms ✓ src/ui/commands/clearCommand.test.ts (13 tests) 34ms ✓ src/validateNonInterActiveAuth.test.ts (13 tests) 26ms ✓ src/ui/hooks/useBranchCommand.test.ts (16 tests) 61ms ✓ src/ui/components/agent-view/agentHistoryAdapter.test.ts (35 tests) 11ms qwen serve: GET /file rejected request missing required ?path qwen serve: GET /stat unexpected error: bound workspace is not configured ✓ src/serve/routes/workspaceFileRead.test.ts (31 tests) 255ms ✓ src/ui/hooks/useAutoAcceptIndicator.test.ts (15 tests) 57ms ✓ src/config/migration/versions/v2-to-v3.test.ts (31 tests) 13ms ✓ src/utils/languageUtils.test.ts (45 tests) 13ms ✓ src/ui/keyMatchers.test.ts (39 tests) 11ms ✓ src/ui/hooks/useSessionSearchInput.test.ts (32 tests) 44ms ✓ src/ui/components/MainContent.test.tsx (7 tests) 670ms ✓ src/config/jsonSchemaArg.test.ts (40 tests) 327ms qwen serve: POST /workspace/memory refused — existing file /tmp/qwen-serve-memory-xXvAXz/workspace/QWEN.md is 17825792 bytes (cap 16777216) qwen serve: POST /workspace/memory failed (scope=workspace mode=append): Error: EACCES: permission denied, open '/tmp/qwen-serve-memory-3ZI6pL/workspace/QWEN.md' at open (node:internal/fs/promises:1281:25) at Object.writeFile (node:internal/fs/promises:1899:14) at runWrite (/startdir/src/qwen-code/packages/core/src/memory/writeContextFile.ts:215:3) at /startdir/src/qwen-code/packages/core/src/memory/writeContextFile.ts:161:19 qwen serve: POST /workspace/memory failed (scope=workspace mode=append): Error: EACCES: permission denied, open '/tmp/qwen-serve-memory-3ZI6pL/workspace/QWEN.md' at open (node:internal/fs/promises:1281:25) at Object.writeFile (node:internal/fs/promises:1899:14) at runWrite (/startdir/src/qwen-code/packages/core/src/memory/writeContextFile.ts:215:3) at /startdir/src/qwen-code/packages/core/src/memory/writeContextFile.ts:161:19 qwen serve: GET /workspace/memory failed: Error: boom at Storage. (/startdir/src/qwen-code/packages/cli/src/serve/workspaceMemory.test.ts:448:17) at Storage.mockCall (file:///startdir/src/qwen-code/node_modules/@vitest/spy/dist/index.js:96:15) at Storage.getGlobalQwenDir (file:///startdir/src/qwen-code/node_modules/tinyspy/dist/index.js:47:103) at collectWorkspaceMemoryStatus (/startdir/src/qwen-code/packages/cli/src/serve/workspaceMemory.ts:340:29) at /startdir/src/qwen-code/packages/cli/src/serve/workspaceMemory.ts:88:22 ✓ src/serve/workspaceMemory.test.ts (17 tests) 159ms ✓ src/ui/components/ModelDialog.test.tsx (13 tests) 155ms ✓ src/ui/commands/renameCommand.test.ts (22 tests) 33ms ✓ src/ui/AppContainer.test.tsx (77 tests) 5926ms ✓ src/ui/hooks/useExtensionUpdates.test.ts (15 tests) 310ms ✓ src/serve/fs/paths.test.ts (29 tests) 31ms ✓ src/ui/components/StatsDisplay.test.tsx (17 tests) 531ms ✓ src/ui/hooks/useDeleteCommand.test.ts (14 tests) 41ms ✓ src/ui/commands/btwCommand.test.ts (17 tests) 39ms ✓ src/utils/startupProfiler.test.ts (19 tests) 34ms ✓ src/services/McpPromptLoader.test.ts (25 tests) 13ms ✓ src/commands/mcp/add.test.ts (25 tests) 119ms ✓ src/ui/commands/statsCommand.test.ts (13 tests) 26ms ✓ src/ui/components/ModelStatsDisplay.test.tsx (16 tests) 568ms ✓ src/ui/commands/tasksCommand.test.ts (10 tests) 15ms ✓ src/utils/systemInfo.test.ts (22 tests) 31ms ✓ src/ui/utils/InlineMarkdownRenderer.test.tsx (23 tests) 600ms ✓ src/ui/components/shared/BaseSelectionList.test.tsx (25 tests | 1 skipped) 1121ms ✓ src/serve/auth/qwenDeviceFlowProvider.test.ts (9 tests) 9ms ✓ src/nonInteractiveCliCommands.test.ts (19 tests) 20ms ✓ src/acp-integration/session/HistoryReplayer.test.ts (17 tests) 13ms ✓ src/ui/hooks/useProviderUpdates.test.ts (13 tests) 225ms ✓ src/utils/handleAutoUpdate.test.ts (18 tests) 19ms ❯ src/ui/auth/AuthDialog.test.tsx (24 tests | 1 failed) 11612ms ✓ AuthDialog > should show an error if the initial auth type is invalid 75ms ✓ AuthDialog > GEMINI_API_KEY environment variable > should detect GEMINI_API_KEY environment variable 30ms ✓ AuthDialog > GEMINI_API_KEY environment variable > should not show the GEMINI_API_KEY message if QWEN_DEFAULT_AUTH_TYPE is set to something else 23ms ✓ AuthDialog > GEMINI_API_KEY environment variable > should show the GEMINI_API_KEY message if QWEN_DEFAULT_AUTH_TYPE is set to use api key 28ms ✓ AuthDialog > QWEN_DEFAULT_AUTH_TYPE environment variable > should select the auth type specified by QWEN_DEFAULT_AUTH_TYPE 21ms ✓ AuthDialog > QWEN_DEFAULT_AUTH_TYPE environment variable > should fall back to default if QWEN_DEFAULT_AUTH_TYPE is not set 22ms ✓ AuthDialog > QWEN_DEFAULT_AUTH_TYPE environment variable > should show an error and fall back to default if QWEN_DEFAULT_AUTH_TYPE is invalid 21ms ✓ AuthDialog > should prevent exiting when no auth method is selected and show error message 100ms ✓ AuthDialog > should not exit if there is already an error message 94ms ✓ AuthDialog > should allow exiting when auth method is already selected 89ms ✓ AuthDialog > should preserve the selected main entry when returning from each top-level flow 620ms ✓ AuthDialog > should go back from Coding Plan region selection to Alibaba ModelStudio 197ms ✓ AuthDialog > should go back from third-party provider API key input to provider list 254ms ✓ AuthDialog > should show preset providers in third-party provider options 138ms ✓ AuthDialog > drives API key provider steps from endpoint options metadata 353ms ✓ AuthDialog > should show Alibaba ModelStudio access methods after selecting Alibaba ModelStudio 93ms × AuthDialog > should submit Token Plan through the shared subscription handler 5092ms → expected '┌────────────────────────────────────…' to match /›\s*(?:\d+\.\s*)?Token Plan/ ✓ AuthDialog > should return from Token Plan API key input to Token Plan selection 248ms ✓ AuthDialog Custom API Key Wizard > navigates to protocol selection when Custom API Key is selected 214ms ✓ AuthDialog Custom API Key Wizard > navigates to base URL input after selecting a protocol 255ms ✓ AuthDialog Custom API Key Wizard > shows review screen with JSON after entering model IDs 1085ms ✓ AuthDialog Custom API Key Wizard > calls handleProviderSubmit on Enter in review view 826ms ✓ AuthDialog Custom API Key Wizard > shows advanced config screen after entering model IDs 812ms ✓ AuthDialog Custom API Key Wizard > passes generationConfig when advanced options are toggled 919ms ✓ src/services/CommandService.test.ts (15 tests) 19ms ✓ src/ui/utils/textUtils.test.ts (29 tests) 13ms ✓ src/acp-integration/acpAgent.worktree.test.ts (3 tests) 171ms ]2;Qwen - cli]2;Qwen - cli]2;Qwen - root]2;Qwen - root]2;Qwen - root ✓ src/ui/hooks/useResumeCommand.test.ts (9 tests) 44ms ✓ src/gemini.test.tsx (23 tests) 5104ms ✓ gemini.tsx main function > verifies that we dont load the config before relaunchAppInChildProcess 527ms ✓ gemini.tsx main function > should skip full settings discovery in bare mode 511ms ✓ gemini.tsx main function > passes the outer session ID into the sandbox child process 509ms ✓ gemini.tsx main function > does not pass an empty session ID into the sandbox child process 507ms ✓ gemini.tsx main function > does not inject sandbox session ID when argv contains --continue 503ms ✓ gemini.tsx main function > does not inject sandbox session ID when argv contains -c 503ms ✓ gemini.tsx main function > does not inject sandbox session ID when argv contains --resume 503ms ✓ gemini.tsx main function > does not inject sandbox session ID when argv contains -r 503ms ✓ gemini.tsx main function > does not inject sandbox session ID when argv contains --session-id 504ms ✓ gemini.tsx main function > inserts the sandbox session ID before the argument separator 503ms Error parsing settings file. Settings file may be corrupted: Unexpected end of JSON input ✓ src/config/trustedFolders.test.ts (21 tests) 18ms ✓ src/utils/commentJson.test.ts (15 tests) 17ms ✓ src/ui/commands/arenaCommand.test.ts (15 tests) 84ms ✓ src/ui/components/Composer.test.tsx (20 tests) 499ms ✓ src/ui/hooks/useQwenAuth.test.ts (17 tests) 39ms ✓ src/ui/components/QwenOAuthProgress.test.tsx (18 tests) 623ms ✓ src/ui/commands/aboutCommand.test.ts (12 tests) 16ms ✓ src/config/migration/index.test.ts (26 tests) 13ms ✓ src/ui/commands/goalCommand.test.ts (18 tests) 20ms ✓ src/utils/doctorChecks.test.ts (18 tests) 27ms ✓ src/config/settingsSchema.test.ts (18 tests) 16ms ✓ src/ui/auth/useAuth.test.ts (23 tests) 53ms ✓ src/ui/components/messages/DiffRenderer.test.tsx (16 tests) 654ms ✓ src/ui/themes/detect-terminal-theme.test.ts (29 tests) 14ms ✓ src/commands/extensions/settings.test.ts (20 tests) 55ms ✓ src/serve/fs/audit.test.ts (13 tests) 8ms ✓ src/ui/commands/directoryCommand.test.tsx (13 tests) 16ms ✓ src/utils/apiPreconnect.test.ts (26 tests) 19ms ✓ src/services/commandMetadata.test.ts (36 tests) 6ms Invalid values: Argument: approval-mode, Given: "invalid_mode", Choices: "plan", "default", "auto-edit", "auto", "yolo" ✓ src/utils/installationInfo.test.ts (16 tests) 9ms Cannot use both --yolo (-y) and --approval-mode together. Use --approval-mode=yolo instead. process.exit unexpectedly called with "1" ✓ src/acp-integration/session/rewrite/MessageRewriteMiddleware.test.ts (11 tests) 20ms ✓ src/services/SkillCommandLoader.test.ts (18 tests) 15ms ✓ src/config/config.integration.test.ts (19 tests) 574ms ✓ Configuration Integration Tests > Approval Mode Integration Tests > should parse --approval-mode=auto-edit correctly through the full argument parsing flow 482ms ✓ src/ui/components/LoadingIndicator.test.tsx (24 tests) 715ms ✓ src/config/auth.test.ts (17 tests) 16ms ✓ src/ui/utils/todoSnapshot.test.ts (14 tests) 6ms ✓ src/ui/components/messages/AskUserQuestionDialog.test.tsx (18 tests | 1 skipped) 2728ms ✓ > single-select interaction > keeps bare k/j in custom input while Ctrl+P/N still navigates options 659ms ✓ src/utils/sessionPaths.test.ts (8 tests) 61ms ✓ src/commands/extensions/consent.test.ts (17 tests) 9ms ✓ src/ui/utils/resumeHistoryUtils.test.ts (5 tests) 7ms ✓ src/utils/earlyInputCapture.test.ts (28 tests) 14ms ✓ src/services/BundledSkillLoader.test.ts (16 tests) 13ms ✓ src/ui/components/shared/MaxSizedBox.test.tsx (21 tests) 617ms ✓ src/commands/extensions/update.test.ts (14 tests) 26ms 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:1505 throw err; ^ Error: Cannot find module '/app/cli.js' at Module._resolveFilename (node:internal/modules/cjs/loader:1502:15) at wrapResolveFilename (node:internal/modules/cjs/loader:1073:27) at defaultResolveImplForCJSLoading (node:internal/modules/cjs/loader:1097:10) at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1118:12) at Module._load (node:internal/modules/cjs/loader:1287: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 v26.1.0 Fatal error: Failed to relaunch the CLI process. PROCESS_EXIT_CALLED ✓ src/services/FileCommandLoader-extension.test.ts (6 tests) 38ms ✓ src/serve/fs/contract.test.ts (10 tests) 24ms ✓ src/utils/relaunch.test.ts (8 tests) 48ms ✓ src/utils/osc.test.ts (30 tests) 7ms ✓ src/ui/components/messages/ToolConfirmationMessage.test.tsx (16 tests) 514ms ✓ src/ui/utils/restoreGoal.test.ts (18 tests) 15ms ✓ src/ui/components/hooks/constants.test.ts (27 tests) 11ms ✓ src/ui/commands/restoreCommand.test.ts (13 tests) 50ms ✓ src/acp-integration/session/Session.worktree.test.ts (4 tests) 11ms ✓ src/services/BuiltinCommandLoader.test.ts (10 tests) 13ms ✓ src/serve/envSnapshot.test.ts (13 tests) 354ms ✓ src/ui/themes/theme-manager.test.ts (18 tests) 28ms ✓ src/utils/envVarResolver.test.ts (16 tests) 8ms ✓ src/ui/hooks/useKeypress.test.ts (15 tests) 74ms ✓ src/utils/writeWithBackup.test.ts (12 tests) 10ms ✓ src/config/migration/versions/v3-to-v4.test.ts (32 tests) 11ms ✓ src/ui/utils/historyMapping.test.ts (16 tests) 5ms ✓ src/ui/components/Help.test.tsx (8 tests) 616ms ✓ src/services/prompt-processors/injectionParser.test.ts (21 tests) 8ms ✓ src/acp-integration/session/rewrite/LlmRewriter.test.ts (9 tests) 5ms ✓ src/serve/routes/workspaceFileWrite.test.ts (10 tests) 138ms ✓ src/ui/commands/ideCommand.test.ts (8 tests) 15ms ✓ src/ui/hooks/useInputHistory.test.ts (11 tests) 25ms ✓ src/ui/hooks/useExportCompletion.test.ts (20 tests) 33ms ✓ src/ui/themes/color-utils.test.ts (16 tests) 9ms ✓ src/ui/hooks/useShellHistory.test.ts (7 tests) 574ms ✓ src/ui/hooks/useInputHistoryStore.test.ts (14 tests) 40ms ✓ src/ui/components/HistoryItemDisplay.test.tsx (14 tests) 520ms ✓ src/ui/hooks/useSessionPicker.test.tsx (8 tests) 47ms ✓ src/ui/hooks/useMessageQueue.test.ts (16 tests) 46ms ✓ src/ui/utils/computeStats.test.ts (12 tests) 4ms ✓ src/ui/hooks/useEditorSettings.test.ts (10 tests) 31ms ✓ src/config/migration/versions/v1-to-v2.test.ts (20 tests) 10ms ✓ src/commands/mcp/reconnect.test.ts (6 tests) 8ms ✓ src/ui/hooks/useTrustModify.test.ts (8 tests) 38ms ✓ src/services/prompt-processors/atFileProcessor.test.ts (11 tests) 20ms ✓ src/utils/gitUtils.test.ts (24 tests) 23ms ✓ src/ui/hooks/useReverseSearchCompletion.test.tsx (10 tests) 48ms ✓ src/serve/fs/policy.test.ts (18 tests) 22ms ✓ src/ui/hooks/useTurnDiffs.test.ts (7 tests) 299ms ✓ src/services/command-migration-tool.test.ts (13 tests) 53ms ✓ src/ui/hooks/useLoadingIndicator.test.ts (8 tests) 49ms ✓ src/ui/components/hooks/HookConfigDetailStep.test.tsx (14 tests) 526ms ✓ src/acp-integration/session/emitters/PlanEmitter.test.ts (17 tests) 8ms ✓ src/ui/hooks/useAttentionNotifications.test.ts (9 tests) 50ms ✓ src/acp-integration/session/emitters/MessageEmitter.test.ts (13 tests) 11ms ✓ src/ui/utils/formatters.test.ts (32 tests) 11ms ✓ src/ui/hooks/useHistoryManager.test.ts (8 tests) 35ms ✓ src/commands/extensions/install.test.ts (8 tests) 17ms ✓ src/ui/components/PluginChoicePrompt.test.tsx (13 tests) 535ms ✓ src/serve/fs/errors.test.ts (20 tests) 12ms ✓ src/ui/commands/setupGithubCommand.test.ts (8 tests) 44ms ✓ src/ui/hooks/useIdeTrustListener.test.ts (5 tests) 30ms ✓ src/ui/components/hooks/HooksManagementDialog.test.tsx (8 tests) 972ms ✓ src/ui/commands/insightCommand.test.ts (4 tests) 15ms ✓ src/commands/channel/start.test.ts (4 tests) 9ms ✓ src/nonInteractive/io/StreamJsonInputReader.test.ts (11 tests) 14ms ✓ src/ui/statusLinePresets.test.ts (11 tests) 7ms ✓ src/ui/components/Footer.test.tsx (11 tests) 339ms ✓ src/ui/hooks/useGitBranchName.test.ts (7 tests | 2 skipped) 39ms ✓ src/ui/components/messages/CompressionMessage.test.tsx (8 tests) 411ms ✓ src/ui/hooks/useFolderTrust.test.ts (9 tests) 32ms ✓ src/ui/utils/highlight.test.ts (18 tests) 7ms ✓ src/ui/hooks/usePhraseCycler.test.ts (9 tests) 36ms ✓ src/ui/components/Header.test.tsx (18 tests) 563ms ✓ src/config/loadedSettingsAdapter.test.ts (5 tests) 9ms ✓ src/ui/utils/synchronizedOutput.test.ts (17 tests) 7ms ✓ src/services/commandUtils.test.ts (14 tests) 4ms ✓ src/dualOutput/DualOutputBridge.test.ts (12 tests) 21ms ✓ src/ui/commands/lspCommand.test.ts (7 tests) 15ms ✓ src/ui/commands/extensionsCommand.test.ts (7 tests) 13ms ✓ src/ui/commands/bugCommand.test.ts (3 tests) 10ms ✓ src/ui/components/hooks/HookDetailStep.test.tsx (12 tests) 520ms ✓ src/ui/components/arena/ArenaSelectDialog.test.tsx (5 tests) 461ms ✓ src/serve/auth.test.ts (6 tests) 5ms ✓ src/ui/components/background-view/BackgroundTasksPill.test.tsx (16 tests) 5ms ✓ src/commands/channel/config-utils.test.ts (15 tests) 8ms ✓ src/ui/components/TrustDialog.test.tsx (6 tests) 386ms ✓ src/commands/mcp/list.test.ts (4 tests) 9ms ✓ src/ui/components/StatusLineDialog.test.tsx (4 tests) 398ms ✓ src/core/initializer.test.ts (11 tests) 11ms ✓ src/utils/deepMerge.test.ts (13 tests) 6ms ✓ src/ui/contexts/SessionContext.test.tsx (4 tests) 118ms ✓ src/ui/utils/lowlightLoader.test.ts (5 tests) 23ms ✓ src/ui/models/availableModels.test.ts (14 tests) 9ms ✓ src/ui/commands/approvalModeCommand.test.ts (13 tests) 15ms ✓ src/utils/costCalculator.test.ts (14 tests) 5ms ✓ src/i18n/mustTranslateKeys.test.ts (19 tests) 311ms ✓ src/ui/components/shared/RadioButtonSelect.test.tsx (5 tests) 133ms ✓ src/ui/components/AnsiOutput.test.tsx (8 tests) 271ms ✓ src/ui/commands/initCommand.test.ts (5 tests) 11ms ✓ src/ui/components/SessionPreview.test.tsx (6 tests) 683ms ✓ src/config/migration/scheduler.test.ts (7 tests) 9ms ✓ src/ui/components/messages/CompactToolGroupDisplay.test.tsx (8 tests) 279ms ✓ src/ui/commands/planCommand.test.ts (7 tests) 12ms ✓ src/ui/components/Tips.test.ts (9 tests) 9ms ✓ src/ui/components/hooks/HooksListStep.test.tsx (9 tests) 279ms ✓ src/commands/channel/pidfile.test.ts (12 tests) 264ms ✓ src/ui/components/AppHeader.test.tsx (6 tests) 221ms ✓ src/ui/components/mcp/utils.test.ts (16 tests) 8ms ✓ src/ui/commands/resumeCommand.test.ts (9 tests) 13ms ✓ src/utils/commands.test.ts (12 tests) 4ms ✓ src/ui/utils/terminalRedrawOptimizer.test.ts (9 tests) 9ms ✓ src/ui/components/messages/DiffStatsDisplay.test.tsx (6 tests) 203ms ✓ src/ui/layouts/DefaultAppLayout.test.tsx (5 tests) 138ms ✓ src/ui/utils/updateCheck.test.ts (9 tests) 9ms ✓ src/ui/components/ToolStatsDisplay.test.tsx (5 tests) 201ms ✓ src/services/FileCommandLoader-markdown.test.ts (4 tests) 28ms ✓ src/ui/components/arena/ArenaCards.test.tsx (2 tests) 147ms ✓ src/ui/utils/historyUtils.test.ts (9 tests) 4ms ✓ src/services/markdown-command-parser.test.ts (13 tests) 7ms ✓ src/ui/utils/MermaidDiagram.test.tsx (5 tests) 420ms ✓ src/ui/components/extensions/ExtensionsManagerDialog.test.tsx (4 tests) 147ms ✓ src/ui/components/StickyTodoList.test.tsx (5 tests) 254ms ✓ src/utils/cleanup.test.ts (8 tests) 159ms ✓ src/services/tips/tipScheduler.test.ts (7 tests) 6ms ✓ src/ui/components/views/McpStatus.test.tsx (12 tests) 376ms ✓ src/nonInteractive/io/StreamJsonOutputAdapter.dualOutput.test.ts (5 tests) 9ms ✓ src/services/notificationService.test.ts (9 tests) 6ms ✓ src/ui/App.test.tsx (7 tests) 188ms ✓ src/ui/commands/mcpCommand.test.ts (6 tests) 9ms ✓ src/ui/utils/modelsBySource.test.ts (7 tests) 10ms ✓ src/ui/components/SessionSummaryDisplay.test.tsx (3 tests) 181ms ✓ src/acp-integration/service/filesystem.test.ts (4 tests) 8ms ✓ src/ui/hooks/useFocus.test.ts (6 tests) 34ms ✓ src/services/tips/tipHistory.test.ts (11 tests) 6ms ✓ src/ui/commands/compressCommand.test.ts (5 tests) 12ms ✓ src/ui/hooks/useTimer.test.ts (8 tests) 34ms ✓ src/ui/components/shared/EnumSelector.test.tsx (9 tests) 287ms ✓ src/commands/extensions/utils.test.ts (6 tests) 7ms ✓ src/ui/commands/arenaCommand.agentComplete.test.ts (1 test) 8ms ✓ src/commands/extensions/disable.test.ts (7 tests) 24ms ✓ src/ui/utils/sessionPickerUtils.test.ts (12 tests) 4ms ✓ src/ui/utils/clipboardUtils.test.ts (11 tests) 27ms ✓ src/ui/hooks/useAwaySummary.test.ts (2 tests) 89ms ✓ src/ui/components/FolderTrustDialog.test.tsx (9 tests) 355ms ✓ src/ui/utils/backgroundWorkUtils.test.ts (7 tests) 5ms ✓ src/i18n/index.test.ts (8 tests) 3897ms ✓ bundled locale fallback > loads bundled builtin translations when locale files are absent on disk 847ms ✓ bundled locale fallback > falls back to bundled translations when a user locale default export is null 596ms ✓ bundled locale fallback > falls back to bundled translations when a user locale default export is an array 880ms ✓ language normalization > normalizes explicit locale IDs before loading translations 845ms ✓ language normalization > normalizes explicit POSIX locale strings before loading translations 726ms ✓ src/ui/components/shared/TextInput.test.tsx (6 tests) 173ms ✓ src/ui/hooks/useWelcomeBack.test.ts (4 tests) 201ms ✓ src/commands/extensions/enable.test.ts (7 tests) 26ms ✓ src/remoteInput/RemoteInputWatcher.test.ts (5 tests) 376ms ✓ src/ui/hooks/useSessionPicker.test.ts (4 tests) 26ms ✓ src/ui/components/hooks/HooksDisabledStep.test.tsx (8 tests) 211ms ✓ src/ui/hooks/useConfigInitMessage.test.ts (7 tests) 27ms ✓ src/ui/components/extensions/steps/ExtensionListStep.test.tsx (5 tests) 194ms ✓ src/ui/commands/docsCommand.test.ts (4 tests) 13ms ✓ src/ui/components/shared/ToolElapsedTime.test.tsx (8 tests) 300ms ✓ src/utils/userStartupWarnings.test.ts (5 tests) 22ms ✓ src/acp-integration/session/rewrite/TurnBuffer.test.ts (12 tests) 5ms ✓ src/ui/components/PrepareLabel.test.tsx (6 tests) 207ms ✓ src/ui/commands/toolsCommand.test.ts (4 tests) 10ms ✓ src/ui/hooks/useWorktreeSession.test.tsx (4 tests) 356ms ✓ src/ui/components/SettingInputPrompt.test.tsx (6 tests) 209ms ✓ src/ui/hooks/useSlashCompletion.integration.test.ts (2 tests) 133ms ✓ src/ui/components/QueuedMessageDisplay.test.tsx (7 tests) 305ms ✓ src/ui/layouts/ScreenReaderAppLayout.test.tsx (4 tests) 103ms ✓ src/utils/readStdin.test.ts (4 tests) 6ms ✓ src/ui/themes/theme.test.ts (5 tests) 4ms ✓ src/commands/mcp/remove.test.ts (4 tests) 26ms ✓ src/acp-integration/session/permissionUtils.test.ts (4 tests) 4ms No extensions installed. ✓ src/ui/auth/ProviderSetupSteps.test.tsx (1 test) 114ms 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/auth.test.ts (9 tests) 32ms ✓ src/commands/extensions.test.tsx (11 tests) 37ms ✓ src/ui/components/agent-view/AgentTabBar.test.tsx (1 test) 89ms ✓ src/commands/extensions/new.test.ts (4 tests) 28ms ✓ src/acp-integration/session/rewrite/config.test.ts (5 tests) 4ms ✓ src/ui/utils/mermaidVisualRenderer.test.ts (4 tests) 17ms ✓ src/commands/extensions/list.test.ts (4 tests) 21ms ✓ src/services/insight/generators/StaticInsightGenerator.test.ts (1 test) 13ms ✓ src/ui/components/extensions/steps/ActionSelectionStep.test.tsx (5 tests) 186ms ✓ src/ui/components/views/ExtensionsList.test.tsx (9 tests) 301ms ✓ src/ui/components/ConsentPrompt.test.tsx (5 tests) 194ms ✓ src/ui/utils/displayUtils.test.ts (8 tests) 5ms ✓ src/ui/components/ThemeDialog.test.tsx (2 tests) 471ms ✓ src/commands/extensions/link.test.ts (4 tests) 21ms ✓ src/acp-integration/authPreflight.test.ts (3 tests) 4ms ✓ src/ui/components/ContextSummaryDisplay.test.tsx (4 tests) 163ms ✓ src/config/modelProvidersScope.test.ts (4 tests) 3ms ✓ src/ui/commands/terminalSetupCommand.test.ts (5 tests) 5ms ✓ src/ui/hooks/useTerminalNotification.test.ts (4 tests) 6ms ✓ src/ui/hooks/useMemoryMonitor.test.ts (3 tests) 23ms ✓ src/ui/commands/branchCommand.test.ts (6 tests) 7ms ✓ src/ui/utils/markdownUtilities.test.ts (7 tests) 4ms ✓ src/ui/components/TodoDisplay.test.tsx (6 tests) 181ms ✓ src/ui/components/MemoryDialog.test.tsx (2 tests) 184ms ✓ src/config/path-freshness.test.ts (3 tests) 4ms ✓ src/utils/startupWarnings.test.ts (4 tests) 6ms ✓ src/ui/commands/contextCommand.test.ts (1 test) 10ms ✓ src/utils/systemInfoFields.test.ts (2 tests) 5ms ✓ src/config/keyBindings.test.ts (3 tests) 6ms ✓ src/ui/components/BaseTextInput.test.tsx (3 tests) 130ms ✓ src/ui/components/IdeTrustChangeDialog.test.tsx (6 tests) 282ms ✓ src/ui/utils/export/collect.test.ts (1 test) 7ms ✓ src/ui/commands/authCommand.test.ts (6 tests) 7ms ✓ src/ui/components/RewindSelector.test.tsx (1 test) 167ms ✓ src/utils/windowTitle.test.ts (7 tests) 4ms ✓ src/core/auth.test.ts (3 tests) 6ms ✓ src/ui/components/shared/DescriptiveRadioButtonSelect.test.tsx (2 tests) 131ms ✓ src/ui/components/messages/BtwMessage.test.tsx (5 tests) 173ms ✓ src/core/theme.test.ts (5 tests) 7ms ✓ src/ui/components/WorktreeExitDialog.test.tsx (1 test) 79ms ✓ src/commands/mcp.test.ts (3 tests) 10ms ✓ src/ui/components/mcp/steps/ServerListStep.test.tsx (1 test) 114ms ✓ src/test-utils/mockCommandContext.test.ts (3 tests) 6ms ✓ src/ui/components/GoalPill.test.tsx (2 tests) 161ms ✓ src/ui/commands/hooksCommand.test.ts (3 tests) 6ms ✓ src/ui/utils/export/normalize.test.ts (1 test) 4ms ✓ src/ui/commands/skillsCommand.test.ts (1 test) 8ms ✓ src/ui/components/subagents/manage/AgentSelectionStep.test.tsx (1 test) 116ms ✓ src/ui/commands/statuslineCommand.test.ts (4 tests) 6ms ✓ src/ui/components/mcp/steps/ToolListStep.test.tsx (1 test) 91ms ✓ src/ui/utils/latexRenderer.test.ts (4 tests) 6ms ✓ src/ui/commands/helpCommand.test.ts (3 tests) 11ms ✓ src/ui/components/SuggestionsDisplay.test.tsx (2 tests) 158ms ✓ src/ui/hooks/useModelCommand.test.ts (3 tests) 23ms ✓ src/ui/hooks/useThemeCommand.test.ts (1 test) 24ms ✓ src/ui/commands/dreamCommand.test.ts (1 test) 9ms ✓ src/ui/components/mcp/MCPHealthPill.test.tsx (6 tests) 3ms ✓ src/ui/components/messages/GoalStatusMessage.test.tsx (3 tests) 116ms ✓ src/ui/commands/quitCommand.test.ts (1 test) 7ms ✓ src/ui/components/ShellConfirmationDialog.test.tsx (4 tests) 214ms ✓ src/ui/components/views/ToolsList.test.tsx (3 tests) 124ms ✓ src/services/command-factory.test.ts (2 tests) 14ms ✓ src/services/prompt-processors/argumentProcessor.test.ts (2 tests) 5ms ✓ src/utils/acpModelUtils.test.ts (5 tests) 4ms ✓ src/ui/commands/themeCommand.test.ts (2 tests) 4ms ✓ src/acp-integration/runtimeOutputDirContext.test.ts (1 test) 3ms ✓ src/ui/components/LoopDetectionConfirmation.test.tsx (2 tests) 86ms ✓ src/ui/commands/permissionsCommand.test.ts (3 tests) 6ms ✓ src/ui/components/GeminiRespondingSpinner.test.tsx (2 tests) 55ms ✓ src/ui/commands/settingsCommand.test.ts (2 tests) 5ms ✓ src/ui/commands/trustCommand.test.ts (3 tests) 4ms ✓ src/ui/components/messages/StatusMessages.test.tsx (1 test) 59ms ✓ src/ui/commands/editorCommand.test.ts (2 tests) 5ms ✓ src/ui/commands/deleteCommand.test.ts (2 tests) 4ms ✓ src/utils/processUtils.test.ts (1 test) 3ms ✓ src/ui/commands/memoryCommand.test.ts (1 test) 3ms ✓ src/commands/extensions/uninstall.test.ts (1 test) 7ms ✓ src/ui/components/ExternalAuthProgress.test.tsx (1 test) 45ms ✓ src/ui/components/InputPrompt.test.tsx (151 tests | 1 skipped) 53366ms ✓ InputPrompt > prompt suggestions > accepts and submits the prompt suggestion on Enter when the buffer is empty 949ms ✓ InputPrompt > onTabConsumerChange reporting (issue #4171) > reports true while the followup prompt suggestion is visible 768ms ✓ InputPrompt > onTabConsumerChange reporting (issue #4171) > reports false again after the autocomplete dropdown is dismissed 424ms ✓ InputPrompt > onSuggestionsVisibilityChange stays narrow (autocomplete only) > stays false when only a followup prompt suggestion is visible 740ms ✓ InputPrompt > should set the buffer text when a shell history command is retrieved 369ms ✓ InputPrompt > should call shellHistory.addCommandToHistory on submit in shell mode 362ms ✓ InputPrompt > should NOT call shell history methods when not in shell mode 656ms ✓ InputPrompt > should call completion.navigateUp for up arrow when suggestions are showing 503ms ✓ InputPrompt > should call completion.navigateDown for down arrow when suggestions are showing 505ms ✓ InputPrompt > should NOT call completion navigation when suggestions are not showing 832ms ✓ InputPrompt > clipboard image paste > should handle Ctrl+V when clipboard has an image 367ms ✓ InputPrompt > clipboard image paste > should handle Cmd+V when clipboard has an image 360ms ✓ InputPrompt > clipboard image paste > should not insert anything when clipboard has no image 376ms ✓ InputPrompt > clipboard image paste > should handle image save failure gracefully 363ms ✓ InputPrompt > clipboard image paste > should insert image path at cursor position with proper spacing 354ms ✓ InputPrompt > clipboard image paste > should handle errors during clipboard operations gracefully 349ms ✓ InputPrompt > should complete a partial parent command 358ms ✓ InputPrompt > should append a sub-command when the parent command is already complete 360ms ✓ InputPrompt > should handle the "backspace" edge case correctly 351ms ✓ InputPrompt > should complete a partial argument for a command 358ms ✓ InputPrompt > should autocomplete on Enter when suggestions are active, without submitting 354ms ✓ InputPrompt > should complete a command based on its altNames 367ms ✓ InputPrompt > should not submit on Enter when the buffer is empty or only contains whitespace 357ms ✓ InputPrompt > should submit directly on Enter when isPerfectMatch is true 346ms ✓ InputPrompt > should submit a perfect match on Enter when suggestions were not navigated 353ms ✓ InputPrompt > should fill and submit an export format selected with arrow navigation 513ms ✓ InputPrompt > should keep cycling export formats after arrow navigation fills input 500ms ✓ InputPrompt > should keep export format suggestions visible after arrow navigation fills input 359ms ✓ InputPrompt > should not clobber manually edited buffer when arrow is pressed after export fill 824ms ✓ InputPrompt > should wrap to jsonl when pressing Up from the /export Phase 1 popup 364ms ✓ InputPrompt > should wrap Phase 2 cycling backward when pressing Up repeatedly 660ms ✓ InputPrompt > should seed Phase 2 cycling when Tab accepts a format in the /export popup 665ms ✓ InputPrompt > should not overwrite /export html with extra args when Down is pressed 508ms ✓ InputPrompt > should reset export cycling state on Escape so arrows no longer cycle 672ms ✓ InputPrompt > should reset export cycling state on Ctrl+C so new input is not overwritten 664ms ✓ InputPrompt > should cycle export format on Down when /export was typed manually (not via popup) 587ms ✓ InputPrompt > should not arm export cycling from restored history text 357ms ✓ InputPrompt > should trigger export-specific arrow navigation even when completion suggestions are a superset 367ms ✓ InputPrompt > should fall through to generic accept when Tab targets a non-export item in the /export superset popup 371ms ✓ InputPrompt > should fall through to generic completion when suggestions are missing an export format 369ms ✓ InputPrompt > should trigger Phase 1 export popup even when /export has trailing spaces 374ms ✓ InputPrompt > should autocomplete on Enter when user arrow-navigated a perfect-match suggestion list 525ms ✓ InputPrompt > should submit directly on Enter after arrow-navigate + backspace + retype to perfect match 919ms ✓ InputPrompt > should submit directly on Enter for a perfect match without prior arrow navigation 362ms ✓ InputPrompt > should reset history navigation after submitting on Enter 358ms ✓ InputPrompt > should submit directly on Enter when a complete leaf command is typed 379ms ✓ InputPrompt > should autocomplete an @-path on Enter without submitting 372ms ✓ InputPrompt > should add a newline on enter when the line ends with a backslash 360ms ✓ InputPrompt > should clear the buffer on Ctrl+C if it has text 362ms ✓ InputPrompt > should NOT clear the buffer on Ctrl+C if it is empty 352ms ✓ InputPrompt > vim mode > should not call buffer.handleInput when vim handles the input 377ms ✓ InputPrompt > vim mode > should call buffer.handleInput when vim does not handle the input 351ms ✓ InputPrompt > vim mode > should call handleInput when vim mode is disabled 347ms ✓ InputPrompt > vim mode > should toggle shortcuts when vim passes through ? on an empty prompt 372ms ✓ InputPrompt > unfocused paste > should handle bracketed paste when not focused 367ms ✓ InputPrompt > unfocused paste > should ignore regular keypresses when not focused 353ms ✓ InputPrompt > multiline paste > should handle multiline paste 'with \n newlines' 350ms ✓ InputPrompt > multiline paste > should handle multiline paste 'with extra slashes before \n newlines' 351ms ✓ InputPrompt > multiline paste > should handle multiline paste 'with \r\n newlines' 359ms ✓ InputPrompt > paste auto-submission protection > should prevent auto-submission immediately after paste with newlines 655ms ✓ InputPrompt > paste auto-submission protection > should not interfere with normal Enter key submission when no recent paste 360ms ✓ InputPrompt > enhanced input UX - double ESC clear functionality > should clear buffer on second ESC press 411ms ✓ InputPrompt > enhanced input UX - double ESC clear functionality > should handle ESC in shell mode by disabling shell mode 359ms ✓ InputPrompt > enhanced input UX - double ESC clear functionality > should handle ESC when completion suggestions are showing 368ms ✓ InputPrompt > enhanced input UX - double ESC clear functionality > should not call onEscapePromptChange when not provided 384ms ✓ InputPrompt > enhanced input UX - double ESC clear functionality > should not interfere with existing keyboard shortcuts 531ms ✓ InputPrompt > reverse search > invokes reverse search on Ctrl+R 389ms ✓ InputPrompt > reverse search > resets reverse search state on Escape 419ms ✓ InputPrompt > reverse search > completes the highlighted entry on Tab and exits reverse-search 391ms ✓ InputPrompt > reverse search > does not fall through to shell history on Ctrl+P/N while reverse search is active 668ms ✓ InputPrompt > Ctrl+E keyboard shortcut > should move cursor to end of current line in multiline input 374ms ✓ InputPrompt > Ctrl+E keyboard shortcut > should move cursor to end of current line for single line input 383ms ✓ InputPrompt > command search (Ctrl+R when not in shell) > enters command search on Ctrl+R and shows suggestions 365ms ✓ InputPrompt > command search (Ctrl+R when not in shell) > shows command search suggestions over active export suggestions 511ms ✓ InputPrompt > command search (Ctrl+R when not in shell) > renders match window and expanded view (snapshots) 493ms ✓ InputPrompt > command search (Ctrl+R when not in shell) > does not show expand/collapse indicator for short suggestions 335ms ✓ InputPrompt > should still allow input when shell is not focused 341ms ✓ InputPrompt > large paste placeholder > should create placeholder for paste > 1000 characters 335ms ✓ InputPrompt > large paste placeholder > should create placeholder for paste > 10 lines 335ms ✓ InputPrompt > large paste placeholder > should use sequential IDs for multiple pastes of same size 486ms ✓ InputPrompt > large paste placeholder > should handle mixed pastes with different character counts 640ms ✓ InputPrompt > Ctrl+Y retry shortcut > should trigger handleRetryLastPrompt on Ctrl+Y 337ms ✓ InputPrompt > Ctrl+Y retry shortcut > should NOT trigger retry on plain y key 336ms ✓ InputPrompt > Ctrl+Y retry shortcut > should NOT trigger retry on Ctrl+R (reverse search) 333ms ✓ InputPrompt > Ctrl+Y retry shortcut > should handle Ctrl+Y when feedback dialog is open 339ms ✓ InputPrompt > queue input editing > should pop queued messages into input on Up arrow when queue is non-empty 343ms ✓ InputPrompt > queue input editing > should prepend queued messages before existing input text 346ms ✓ InputPrompt > queue input editing > should pop queued messages on ESC when queue is non-empty 340ms ✓ InputPrompt > queue input editing > should fall through to history when pop returns null (race condition) 336ms ✓ InputPrompt > queue input editing > should navigate history on Up arrow when queue is empty 335ms ✓ InputPrompt > queue input editing > should not intercept Ctrl+P when queue is non-empty 340ms ✓ InputPrompt > two-step edge transition for history navigation > Ctrl+P with cursor mid-line snaps to col 0 without touching history 332ms ✓ InputPrompt > two-step edge transition for history navigation > Ctrl+N with cursor not at end-of-line snaps to end without touching history 333ms ✓ InputPrompt > two-step edge transition for history navigation > Ctrl+P at col 0 walks history and parks the cursor at offset 0 336ms ✓ InputPrompt > two-step edge transition for history navigation > Ctrl+P/N and arrows do not change input history while a tool confirmation owns navigation 792ms ✓ InputPrompt > two-step edge transition for history navigation > Ctrl+N falls through to the agent tab bar when there is no newer history 347ms ✓ InputPrompt > two-step edge transition for history navigation > arrow Down applies the same snap-before-history rule as Ctrl+N 375ms ✓ InputPrompt > two-step edge transition for history navigation > arrow Down at end-of-line walks history 393ms ✓ InputPrompt > two-step edge transition for history navigation > arrow Down falls through to the agent tab bar when there is no newer history 380ms ✓ InputPrompt > two-step edge transition for history navigation > arrow Up applies the same two-step rule as Ctrl+P (snap before navigate) 390ms ⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯ FAIL src/ui/auth/AuthDialog.test.tsx > AuthDialog > should submit Token Plan through the shared subscription handler AssertionError: expected '┌────────────────────────────────────…' to match /›\s*(?:\d+\.\s*)?Token Plan/ - Expected: /›\s*(?:\d+\.\s*)?Token Plan/ + Received: "┌──────────────────────────────────────────────────────────────────────────────────────────────────┐ │ │ │ Alibaba ModelStudio · Access Method │ │ │ │ › Coding Plan │ │ For individual developers · Weekly quota included │ │ │ │ Token Plan │ │ For teams and companies · Usage-based billing with dedicated endpoint │ │ │ │ Standard API Key │ │ Connect with an existing ModelStudio API key │ │ │ │ Enter to select, ↑↓ to navigate, Esc to go back │ │ │ └──────────────────────────────────────────────────────────────────────────────────────────────────┘" ❯ expectSelectedOption src/ui/auth/AuthDialog.test.tsx:129:17 127| 128| const expectSelectedOption = (frame: string | undefined, label: string… 129| expect(frame).toMatch( | ^ 130| new RegExp(`›\\s*(?:\\d+\\.\\s*)?${escapeRegExp(label)}`), 131| ); ❯ vi.waitFor.timeout src/ui/auth/AuthDialog.test.tsx:140:7 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 375 passed (376) Tests 1 failed | 6765 passed | 9 skipped (6775) Start at 22:46:27 Duration 72.19s (transform 28.95s, setup 37.29s, collect 635.45s, tests 148.20s, environment 127.47s, prepare 28.39s) 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.16.0 npm error location /startdir/src/qwen-code/packages/cli npm error command failed npm error command sh -c vitest run '--exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts' > @qwen-code/qwen-code-core@0.16.0 test > vitest run --exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts RUN v3.2.4 /startdir/src/qwen-code/packages/core Coverage enabled with v8 ✓ src/services/shellExecutionService.test.ts (83 tests) 416ms ✓ src/core/openaiContentGenerator/pipeline.test.ts (42 tests) 100ms ✓ src/utils/fileUtils.test.ts (91 tests) 187ms ✓ src/services/sessionService.test.ts (53 tests) 177ms ✓ src/hooks/hookEventHandler.test.ts (116 tests) 167ms ✓ src/core/anthropicContentGenerator/converter.test.ts (50 tests) 16ms ✓ src/core/loggingContentGenerator/loggingContentGenerator.test.ts (39 tests) 31ms ✓ src/models/modelsConfig.test.ts (57 tests) 26ms ✓ src/services/chatCompressionService.test.ts (54 tests) 38ms +----------------- 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... | | | +--------------------------------------------------------------------+ +----------------- 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 (83 tests) 2101ms ✓ getQwenOAuthClient - Enhanced Error Scenarios > should handle different authentication failure reasons - timeout 2029ms ✓ src/agents/background-tasks.test.ts (61 tests) 43ms ✓ src/tools/read-file.test.ts (60 tests) 476ms ✓ src/utils/gitDiff.test.ts (59 tests) 2270ms ✓ src/mcp/oauth-provider.test.ts (22 tests) 234ms ✓ src/tools/monitor.test.ts (72 tests) 111ms ✓ src/telemetry/loggers.test.ts (45 tests) 150ms ✓ src/hooks/hookSystem.test.ts (73 tests) 106ms ✓ src/qwen/qwenContentGenerator.test.ts (44 tests) 275ms ✓ src/tools/mcp-tool.test.ts (53 tests) 221ms ✓ src/permissions/permission-manager.test.ts (229 tests) 189ms ✓ src/tools/write-file.test.ts (47 tests) 322ms ✓ src/config/config.test.ts (172 tests) 491ms ✓ src/skills/skill-manager.test.ts (72 tests) 144ms qwen serve: MCP server 'c' refused (budget exhausted, budget=2, mode=enforce) qwen serve: MCP server 'd' refused (budget exhausted, budget=2, mode=enforce) qwen serve: MCP server 'mike' refused (budget exhausted, budget=2, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: ignoring invalid QWEN_SERVE_MCP_CLIENT_BUDGET='-3' (expected positive integer); MCP budget enforcement disabled for this child. qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: QWEN_SERVE_MCP_BUDGET_MODE=enforce requires QWEN_SERVE_MCP_CLIENT_BUDGET=N; downgrading to off. Set both env vars to enable MCP guardrail enforcement. qwen serve: MCP server 'third' refused (budget exhausted, budget=2, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: QWEN_SERVE_MCP_BUDGET_MODE=warn requires QWEN_SERVE_MCP_CLIENT_BUDGET=N; downgrading to off. Set both env vars to enable MCP guardrail enforcement. qwen serve: McpClientManager constructed with budgetMode=enforce but no clientBudget; downgrading to off. qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'c' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'c' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'd' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'e' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'b' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'c' refused (budget exhausted, budget=1, mode=enforce) qwen serve: MCP server 'd' refused (budget exhausted, budget=1, mode=enforce) ✓ src/core/openaiContentGenerator/converter.test.ts (102 tests) 52ms ✓ src/subagents/subagent-manager.test.ts (79 tests) 313ms ✓ src/agents/background-agent-resume.test.ts (19 tests) 463ms ✓ src/tools/edit.test.ts (77 tests) 414ms ✓ src/tools/mcp-client-manager.test.ts (71 tests) 488ms ✓ src/tools/agent/agent.test.ts (75 tests) 637ms ✓ src/core/coreToolScheduler.test.ts (163 tests) 1179ms ✓ src/utils/filesearch/crawler.test.ts (44 tests) 2009ms ✓ src/agents/runtime/agent-headless.test.ts (32 tests | 2 skipped) 1512ms ✓ subagent.ts > AgentHeadless > create (Tool Validation) > should create a AgentHeadless successfully with minimal config 422ms ✓ src/telemetry/session-tracing.test.ts (54 tests) 34ms ✓ src/services/fileHistoryService.test.ts (44 tests) 373ms ✓ src/utils/editor.test.ts (151 tests) 79ms ✓ src/tools/ripGrep.test.ts (58 tests) 306ms ✓ src/core/logger.test.ts (52 tests) 265ms ✓ src/utils/memoryImportProcessor.test.ts (28 tests) 77ms ✓ src/tools/shell.test.ts (194 tests) 2270ms ✓ src/lsp/NativeLspService.test.ts (15 tests) 109ms ✓ src/core/anthropicContentGenerator/anthropicContentGenerator.test.ts (65 tests) 8097ms ✓ AnthropicContentGenerator > uses claude-cli identity (User-Agent + x-app + Bearer auth) for non-Anthropic baseURLs 1302ms ✓ AnthropicContentGenerator > countTokens > falls back to character approximation when tokenizer throws 339ms ✓ AnthropicContentGenerator > generateContentStream > redacts proxy credentials from stream creation errors 735ms ✓ AnthropicContentGenerator > generateContentStream > redacts proxy credentials from stream iteration errors 365ms ✓ AnthropicContentGenerator > generateContentStream > requests stream=true and converts streamed events into Gemini chunks 306ms ✓ src/tools/lsp.test.ts (70 tests) 649ms ✓ src/hooks/hookPlanner.test.ts (58 tests) 23ms (node:24124) [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/services/monitorRegistry.test.ts (53 tests) 68ms ✓ src/ide/ide-client.test.ts (32 tests) 129ms ✓ src/services/loopDetectionService.test.ts (43 tests) 283ms ✓ src/core/toolHookTriggers.test.ts (50 tests) 18ms ✓ src/hooks/hookAggregator.test.ts (41 tests) 16ms ✓ src/utils/paths.test.ts (116 tests | 1 skipped) 20ms ✓ src/services/commitAttribution.test.ts (58 tests) 26ms ✓ src/qwen/sharedTokenManager.test.ts (31 tests) 279ms ✓ src/tools/skill.test.ts (44 tests) 40ms ✓ src/core/openaiContentGenerator/streamingToolCallParser.test.ts (59 tests) 21ms ✓ src/core/openaiContentGenerator/provider/dashscope.test.ts (55 tests) 32ms ✓ src/skills/skill-load.test.ts (63 tests) 26ms ✓ src/services/fileReadCache.test.ts (44 tests) 51ms ✓ src/utils/retry.test.ts (56 tests) 39ms ✓ src/services/microcompaction/microcompact.test.ts (33 tests) 10ms ✓ src/utils/sessionStorageUtils.test.ts (47 tests) 19ms ✓ src/hooks/hookRegistry.test.ts (32 tests) 29ms ✓ src/core/prompts.test.ts (60 tests) 25ms ✓ src/tools/todoWrite.test.ts (28 tests) 85ms ✓ src/telemetry/uiTelemetry.test.ts (28 tests) 13ms ✓ src/models/modelConfigResolver.test.ts (49 tests) 18ms ✓ src/core/baseLlmClient.test.ts (34 tests) 23ms ✓ src/models/modelRegistry.test.ts (50 tests) 17ms ✓ src/telemetry/log-to-span-processor.test.ts (32 tests) 39ms ✓ src/extension/extensionSettings.test.ts (23 tests) 65ms ✓ src/core/client.test.ts (149 tests) 4009ms ✓ src/telemetry/sdk.test.ts (36 tests) 111ms ✓ src/config/storage.test.ts (63 tests) 27ms ✓ src/lsp/NativeLspService.integration.test.ts (30 tests) 11ms ✓ src/agents/backends/InProcessBackend.test.ts (33 tests) 50ms ✓ src/telemetry/qwen-logger/qwen-logger.test.ts (33 tests) 33ms ✓ src/utils/shell-utils.test.ts (124 tests) 31ms ✓ src/utils/memoryDiagnostics.test.ts (12 tests) 77ms ✓ src/utils/runtimeFetchOptions.test.ts (44 tests) 20ms ✓ src/extension/extensionManager.test.ts (42 tests) 90ms ✓ src/utils/openaiLogger.test.ts (37 tests) 168ms ✓ src/tools/tool-registry.test.ts (32 tests) 73ms ✓ src/services/sessionService.rename.test.ts (17 tests) 35ms ✓ src/memory/manager.test.ts (28 tests) 83ms ✓ src/utils/pdf.test.ts (34 tests) 27ms ✓ src/utils/filesearch/fileSearch.test.ts (27 tests) 398ms ✓ src/core/turn.test.ts (24 tests) 17ms ✓ src/agents/backends/ITermBackend.test.ts (46 tests) 39ms ✓ src/services/fileSystemService.test.ts (43 tests) 35ms ✓ src/utils/workspaceContext.test.ts (44 tests) 24ms ✓ src/services/chatRecordingService.test.ts (25 tests) 27ms [ToolSearch] setTools() failed while revealing deferred tools: chat not initialised [ToolSearch] setTools() failed while revealing deferred tools: chat not initialised [ToolSearch] ensureTool failed for "bravo": mid-batch failure ✓ src/services/gitWorktreeService.test.ts (20 tests) 15ms ✓ src/hooks/promptHookRunner.test.ts (25 tests) 139ms ✓ src/tools/tool-search.test.ts (33 tests) 74ms ✓ src/utils/notebook.test.ts (28 tests) 51ms ✓ src/agents/arena/ArenaAgentClient.test.ts (21 tests) 44ms ✓ src/agents/agent-transcript.test.ts (25 tests) 24ms ✓ src/utils/rulesDiscovery.test.ts (34 tests) 55ms ✓ src/hooks/hookRunner.test.ts (32 tests) 82ms ✓ src/telemetry/tracer.test.ts (32 tests) 28ms ✓ src/telemetry/metrics.test.ts (40 tests) 494ms ✓ src/core/openaiContentGenerator/provider/default.test.ts (24 tests) 13ms ✓ src/tools/notebook-edit.test.ts (25 tests) 133ms ✓ src/hooks/sessionHooksManager.test.ts (32 tests) 12ms ✓ src/utils/memoryDiscovery.test.ts (16 tests) 103ms ✓ src/utils/schemaValidator.test.ts (40 tests) 173ms ✓ src/goals/goalHook.test.ts (19 tests) 26ms ✓ src/tools/mcp-client.test.ts (36 tests) 28ms ✓ src/agents/backends/TmuxBackend.test.ts (27 tests) 23ms ✓ src/utils/systemEncoding.test.ts (41 tests) 21ms ✓ src/permissions/shell-semantics.test.ts (52 tests) 21ms ✓ src/providers/__tests__/install.test.ts (19 tests) 26ms ✓ src/utils/shellAstParser.test.ts (144 tests) 80ms ✓ src/core/openaiContentGenerator/provider/deepseek.test.ts (25 tests) 9ms ✓ src/extension/variables.test.ts (20 tests) 39ms ✓ src/tools/grep.test.ts (35 tests) 421ms ✓ src/tools/task-stop.test.ts (14 tests) 54ms ✓ src/goals/goalJudge.test.ts (20 tests) 16ms ✓ src/utils/pathReader.test.ts (17 tests) 50ms ✓ src/services/backgroundShellRegistry.test.ts (30 tests) 14ms ✓ src/tools/ls.test.ts (28 tests) 167ms ✓ src/hooks/asyncHookRegistry.test.ts (20 tests) 14ms ✓ src/mcp/oauth-token-storage.test.ts (28 tests) 16ms ✓ src/mcp/oauth-utils.test.ts (27 tests) 13ms ✓ src/memory/writeContextFile.test.ts (16 tests) 54ms ✓ src/core/tokenLimits.test.ts (55 tests) 10ms ✓ src/utils/rateLimit.test.ts (35 tests) 22ms ✓ src/services/toolUseSummary.test.ts (34 tests) 35ms ✓ src/services/compactionInputSlimming.test.ts (26 tests) 9ms ✓ src/utils/sideQuery.test.ts (18 tests) 46ms ✓ src/permissions/classifier-transcript.test.ts (14 tests) 7ms ✓ src/telemetry/config.test.ts (36 tests) 11ms ✓ src/telemetry/detailed-span-attributes.test.ts (28 tests) 15ms ✓ src/core/geminiChat.test.ts (103 tests) 6580ms ✓ GeminiChat > should correctly retry and append to an existing history mid-conversation 2019ms ✓ GeminiChat > should retry if the model returns a completely empty stream (no chunks) 2014ms ✓ GeminiChat > should discard valid partial content from a failed attempt upon retry 2013ms ✓ src/subagents/validation.test.ts (41 tests) 16ms ✓ src/utils/readManyFiles.test.ts (17 tests) 64ms ✓ src/ide/ideContext.test.ts (23 tests) 12ms ✓ src/extension/claude-converter.test.ts (17 tests) 31ms ✓ src/hooks/functionHookRunner.test.ts (20 tests) 85ms ✓ src/agents/runtime/agent-interactive.test.ts (19 tests) 631ms ✓ src/tools/glob.test.ts (44 tests) 2224ms ✓ src/utils/debugLogger.test.ts (22 tests) 35ms ✓ src/utils/partUtils.test.ts (43 tests) 8ms ✓ src/services/chatRecordingService.autoTitle.test.ts (15 tests) 21ms ✓ src/core/geminiContentGenerator/geminiContentGenerator.test.ts (11 tests) 13ms ✓ src/utils/ignorePatterns.test.ts (28 tests) 11ms ✓ src/core/openaiContentGenerator/errorHandler.test.ts (36 tests) 37ms ✓ src/core/openaiContentGenerator/pipeline.concurrent.test.ts (2 tests) 13ms ✓ src/utils/forkedAgent.cache.test.ts (12 tests) 14ms ✓ src/agents/runtime/agent-statistics.test.ts (32 tests) 20ms ✓ src/core/__tests__/openaiTimeoutHandling.test.ts (12 tests) 28ms ✓ src/core/openaiContentGenerator/openaiContentGenerator.test.ts (14 tests) 15ms ✓ src/extension/github.test.ts (30 tests) 59ms ✓ src/services/sessionTitle.test.ts (15 tests) 38ms ✓ src/utils/forkedAgent.agent.test.ts (7 tests) 20ms ✓ src/services/chatRecordingService.customTitle.test.ts (13 tests) 21ms ✓ src/mcp/token-storage/keychain-token-storage.test.ts (24 tests) 777ms ✓ src/utils/getFolderStructure.test.ts (15 tests) 40ms ✓ src/utils/request-tokenizer/textTokenizer.test.ts (31 tests) 46ms ✓ src/tools/modifiable-tool.test.ts (11 tests) 22ms ✓ src/agents/backends/iterm-it2.test.ts (19 tests) 12ms ✓ src/utils/generateContentResponseUtilities.test.ts (29 tests) 10ms ✓ src/memory/skillReviewNudge.integration.test.ts (18 tests) 32ms ✓ src/core/openaiContentGenerator/taggedThinkingParser.test.ts (27 tests) 7ms ✓ src/utils/atomicFileWrite.test.ts (19 tests) 49ms ✓ src/services/sessionService.corruption.test.ts (11 tests) 17ms ✓ src/permissions/classifier.test.ts (20 tests) 12ms ✓ src/services/cronScheduler.test.ts (27 tests) 25ms ✓ src/confirmation-bus/message-bus.test.ts (15 tests) 70ms ✓ src/utils/truncation.test.ts (10 tests) 15ms ✓ src/utils/environmentContext.test.ts (12 tests) 37ms ✓ src/tools/enter-worktree.test.ts (26 tests) 64ms ✓ src/services/gitService.test.ts (14 tests) 34ms ✓ src/mcp/token-storage/file-token-storage.test.ts (16 tests) 563ms ✓ src/permissions/autoMode.test.ts (29 tests) 16ms ✓ src/tools/agent/agent-override.test.ts (8 tests) 24ms ✓ src/telemetry/resource-attributes.test.ts (35 tests) 9ms ✓ src/tools/web-fetch.test.ts (13 tests) 52ms ✓ src/followup/followupState.test.ts (15 tests) 15ms ✓ src/agents/runtime/agent-core.test.ts (9 tests) 12ms ✓ src/output/json-formatter.test.ts (15 tests) 8ms ✓ src/permissions/dangerousRules.test.ts (70 tests) 13ms ✓ src/models/content-generator-config.test.ts (13 tests) 14ms ✓ src/mcp/token-storage/hybrid-token-storage.test.ts (11 tests) 13ms ✓ src/utils/nextSpeakerChecker.test.ts (13 tests) 46ms ✓ src/utils/terminalSerializer.test.ts (20 tests) 81ms ✓ src/utils/runtimeStatus.test.ts (19 tests) 38ms ✓ src/hooks/httpHookRunner.test.ts (10 tests) 30ms ✓ src/utils/gitIgnoreParser.test.ts (20 tests) 44ms ✓ src/utils/envVarResolver.test.ts (16 tests) 6ms ✓ src/services/worktreeSessionService.test.ts (17 tests) 40ms ✓ src/tools/exitPlanMode.test.ts (22 tests) 16ms ✓ src/utils/jsonl-utils.test.ts (22 tests) 26ms ✓ src/services/fileReadCache.integration.test.ts (3 tests) 46ms ✓ src/utils/filesearch/crawlCache.test.ts (13 tests) 36ms ✓ src/utils/request-tokenizer/requestTokenizer.test.ts (11 tests) 6ms ✓ src/permissions/classifier-prompts/system-prompt.test.ts (13 tests) 8ms ✓ src/utils/secure-browser-launcher.test.ts (14 tests) 15ms ✓ src/agents/arena/ArenaManager.test.ts (25 tests) 3595ms ✓ ArenaManager > backend initialization > should emit SESSION_UPDATE with type warning when backend detection returns warning 511ms ✓ ArenaManager > chat history forwarding > should pass chatHistory to backend spawnAgent calls 506ms ✓ ArenaManager > chat history forwarding > should pass undefined chatHistory when not provided 510ms ✓ ArenaManager > active session lifecycle > collects diff summaries and fallback approach summaries 1005ms ✓ ArenaManager > active session lifecycle > cancel should stop backend and move session to CANCELLED 512ms ✓ ArenaManager > active session lifecycle > cleanup should release backend and worktree resources after start 504ms ✓ src/core/openaiContentGenerator/provider/openrouter.test.ts (12 tests) 10ms ✓ src/utils/subagentGenerator.test.ts (9 tests) 43ms ✓ src/core/nonInteractiveToolExecutor.test.ts (8 tests) 21ms ✓ src/extension/marketplace.test.ts (22 tests) 14ms ✓ src/utils/runtimeDiagnostics.test.ts (4 tests) 7ms ✓ src/skills/skill-activation.test.ts (20 tests) 2113ms ✓ extractToolFilePaths → SkillActivationRegistry integration > activates a skill keyed on src/**/*.ts from glob({ path: "src", pattern: "**/*.ts" }) 2104ms ✓ src/utils/editHelper.test.ts (17 tests) 5ms ✓ src/services/fileDiscoveryService.test.ts (13 tests) 29ms ✓ src/permissions/denialTracking.test.ts (19 tests) 7ms ✓ src/hooks/envInterpolator.test.ts (30 tests) 12ms ✓ src/tools/tools.test.ts (11 tests) 9ms ✓ src/hooks/detectTodoChanges.test.ts (12 tests) 9ms ✓ src/utils/cronParser.test.ts (24 tests) 23ms ✓ src/utils/yaml-parser.test.ts (18 tests) 6ms ✓ src/utils/errorParsing.test.ts (18 tests) 8ms ✓ src/core/modalityDefaults.test.ts (31 tests) 8ms ✓ src/followup/overlayFs.test.ts (15 tests) 38ms ✓ src/hooks/promptHookIntegration.test.ts (9 tests) 115ms ✓ src/hooks/registerSkillHooks.test.ts (7 tests) 6ms ✓ src/hooks/urlValidator.test.ts (20 tests) 18ms ✓ src/hooks/ssrfGuard.test.ts (21 tests) 14ms ✓ src/mcp/token-storage/base-token-storage.test.ts (12 tests) 6ms ✓ src/memory/relevanceSelector.test.ts (7 tests) 27ms ✓ src/utils/modelId.test.ts (21 tests) 8ms ✓ src/mcp/sa-impersonation-provider.test.ts (8 tests) 9ms ✓ src/tools/exit-worktree.test.ts (16 tests) 1533ms ✓ ExitWorktreeTool > execute() — session ownership & lifecycle > allows removal when the worktree predates the session-marker guard 327ms ✓ src/ide/ide-installer.test.ts (10 tests) 14ms ✓ src/lsp/LspServerManager.test.ts (7 tests) 6ms ✓ src/tools/send-message.test.ts (7 tests) 39ms ✓ src/tools/askUserQuestion.test.ts (12 tests) 11ms ✓ src/tools/diffOptions.test.ts (9 tests) 5ms ✓ src/lsp/LspConfigLoader.test.ts (6 tests) 21ms ✓ src/ide/process-utils.test.ts (6 tests) 5ms ✓ src/utils/request-tokenizer/imageTokenizer.test.ts (9 tests) 6ms ✓ src/utils/filesearch/ignore.test.ts (12 tests) 19ms ✓ src/extension/gemini-converter.test.ts (9 tests) 9ms ✓ src/subagents/subagent-manager-override.test.ts (4 tests) 13ms ✓ src/utils/gitUtils.test.ts (6 tests) 10ms ✓ src/extension/npm.test.ts (22 tests) 12ms ✓ src/goals/goalLoop.integration.test.ts (2 tests) 7ms ✓ src/utils/safeJsonParse.test.ts (14 tests) 7ms ✓ src/ide/detect-ide.test.ts (14 tests) 8ms ✓ src/core/openaiContentGenerator/provider/mimo.test.ts (9 tests) 7ms ✓ src/agents/runtime/agent-context.test.ts (12 tests) 12ms ✓ src/tools/toAutoClassifierInput.test.ts (11 tests) 7ms ✓ src/utils/shellReadOnlyChecker.test.ts (33 tests) 12ms ✓ src/followup/speculationToolGate.test.ts (28 tests) 89ms ✓ src/extension/override.test.ts (16 tests) 5ms ✓ src/prompts/prompt-registry.test.ts (11 tests) 14ms ✓ src/utils/quotaErrorDetection.test.ts (16 tests) 5ms ✓ src/core/permissionFlow.test.ts (17 tests) 8ms ✓ src/memory/memoryLifecycle.integration.test.ts (1 test) 23ms ✓ src/extension/settings.test.ts (10 tests) 6ms ✓ src/services/generatedFiles.test.ts (11 tests) 6ms ✓ src/utils/contextLengthError.test.ts (25 tests) 7ms ✓ src/utils/textUtils.test.ts (20 tests) 5ms ✓ src/utils/errorReporting.test.ts (5 tests) 7ms ✓ src/core/anthropicContentGenerator/usage.test.ts (7 tests) 4ms ✓ src/utils/configResolver.test.ts (12 tests) 6ms ✓ src/memory/store.test.ts (5 tests) 27ms ✓ src/utils/schemaConverter.test.ts (12 tests) 5ms ✓ src/agents/arena/diff-summary.test.ts (8 tests) 5ms ✓ src/services/attributionTrailer.test.ts (4 tests) 6ms ✓ src/core/openaiContentGenerator/provider/minimax.test.ts (9 tests) 5ms ✓ src/utils/proxyUtils.test.ts (18 tests) 7ms ✓ src/followup/suggestionGenerator.test.ts (18 tests) 11ms ✓ src/memory/extract.test.ts (3 tests) 33ms ✓ src/skills/skill-paths.test.ts (7 tests) 36ms ✓ src/mcp/google-auth-provider.test.ts (8 tests) 17ms ✓ src/memory/recall.test.ts (5 tests) 8ms ✓ src/subagents/builtin-agents.test.ts (8 tests) 6ms ✓ src/followup/smoke.test.ts (21 tests) 25ms ✓ src/utils/installationManager.test.ts (4 tests) 5ms ✓ src/lsp/NativeLspClient.test.ts (2 tests) 5ms ✓ src/extension/storage.test.ts (5 tests) 7ms ✓ src/core/openaiContentGenerator/provider/modelscope.test.ts (5 tests) 5ms ✓ src/hooks/combinedAbortSignal.test.ts (8 tests) 315ms ✓ src/utils/errors.test.ts (12 tests) 5ms ✓ src/core/contentGenerator.test.ts (4 tests) 31ms ✓ src/core/openaiContentGenerator/provider/mistral.test.ts (4 tests) 6ms ✓ src/memory/extractAgent.test.ts (1 test) 31ms ✓ src/skills/symlinkScope.test.ts (5 tests) 5ms ✓ src/utils/xml.test.ts (8 tests) 7ms ✓ src/utils/runtimeStatus.config.test.ts (4 tests) 262ms ✓ src/core/geminiRequest.test.ts (12 tests) 4ms ✓ src/utils/bundlePaths.test.ts (4 tests) 4ms ✓ src/memory/scan.test.ts (2 tests) 27ms ✓ src/utils/toml-to-markdown-converter.test.ts (10 tests) 6ms ✓ src/memory/prompt.test.ts (5 tests) 4ms ✓ src/hooks/stopHookCap.test.ts (7 tests) 3ms ✓ src/tools/syntheticOutput.test.ts (7 tests) 35ms ✓ src/telemetry/sanitize.test.ts (10 tests) 4ms ✓ src/utils/thoughtUtils.test.ts (11 tests) 6ms ✓ src/utils/safeJsonStringify.test.ts (8 tests) 5ms ✓ src/goals/activeGoalStore.test.ts (7 tests) 3ms ✓ src/telemetry/session-context.test.ts (7 tests) 4ms ✓ src/memory/dream.test.ts (3 tests) 18ms ✓ src/utils/qwenIgnoreParser.test.ts (2 tests) 9ms ✓ src/utils/projectSummary.test.ts (3 tests) 25ms ✓ src/memory/indexer.test.ts (2 tests) 29ms ✓ src/core/permission-helpers.test.ts (5 tests) 3ms ✓ src/utils/ripgrepUtils.test.ts (6 tests) 5ms ✓ src/utils/tool-utils.test.ts (19 tests) 4ms ✓ src/memory/dreamAgentPlanner.test.ts (5 tests) 23ms ✓ src/memory/forget.test.ts (1 test) 7ms ✓ src/utils/asyncMessageQueue.test.ts (7 tests) 4ms ✓ src/core/geminiContentGenerator/index.test.ts (3 tests) 8ms ✓ src/tools/cron-create.test.ts (5 tests) 59ms ✓ src/tools/exit-worktree.session.integ.test.ts (4 tests) 1286ms ✓ ExitWorktreeTool — WorktreeSession sidecar cleanup > preserves the sidecar after keep so --resume can restore the worktree binding 301ms ✓ ExitWorktreeTool — WorktreeSession sidecar cleanup > clears the sidecar after remove 369ms ✓ ExitWorktreeTool — WorktreeSession sidecar cleanup > does not clear the sidecar when slug does not match 382ms ✓ src/telemetry/file-exporters.test.ts (1 test) 6ms ✓ src/utils/fetch.test.ts (3 tests) 3ms ✓ src/providers/__tests__/presets/modelscope.test.ts (3 tests) 7ms ✓ src/memory/extractionAgentPlanner.test.ts (5 tests) 11ms ✓ src/utils/startupEventSink.test.ts (4 tests) 7ms ✓ src/lsp/LspConnectionFactory.test.ts (2 tests) 88ms ✓ src/utils/filesearch/result-cache.test.ts (3 tests) 3ms ✓ src/utils/internalPromptIds.test.ts (9 tests) 3ms ✓ src/skills/bundled-skills.integration.test.ts (6 tests) 6ms ✓ src/telemetry/trace-id-utils.test.ts (8 tests) 8ms ✓ src/telemetry/telemetry-utils.test.ts (6 tests) 4ms ✓ src/memory/const.test.ts (3 tests) 3ms ✓ src/tools/cron-list.test.ts (3 tests) 46ms ✓ src/subagents/types.test.ts (3 tests) 3ms ✓ src/memory/entries.test.ts (1 test) 5ms ✓ src/tools/cron-delete.test.ts (4 tests) 43ms ✓ src/index.test.ts (1 test) 2ms ✓ src/providers/__tests__/presets/openrouter.test.ts (4 tests) 3ms ✓ src/followup/speculation.test.ts (7 tests) 5ms ✓ src/tools/enter-worktree.session.integ.test.ts (2 tests) 701ms ✓ EnterWorktreeTool — WorktreeSession sidecar > writes a WorktreeSession sidecar with all fields after creating worktree 307ms ✓ EnterWorktreeTool — WorktreeSession sidecar > overwrites a previous sidecar when entering a new worktree in the same session 392ms ✓ src/services/gitWorktreeService.hooks.integ.test.ts (3 tests) 705ms ✓ src/agents/backends/tmux-commands.test.ts (8 tests) 3ms ✓ src/telemetry/telemetry.test.ts (2 tests) 13ms ✓ src/providers/__tests__/presets/alibaba-coding-plan.test.ts (2 tests) 3ms ✓ src/providers/__tests__/presets/alibaba-token-plan.test.ts (2 tests) 3ms ✓ src/providers/__tests__/presets/alibaba-standard.test.ts (6 tests) 5ms ✓ src/providers/__tests__/presets/deepseek.test.ts (3 tests) 4ms ✓ src/providers/__tests__/presets/idealab.test.ts (4 tests) 5ms ✓ src/providers/__tests__/presets/zai.test.ts (3 tests) 4ms ✓ src/providers/__tests__/presets/minimax.test.ts (2 tests) 5ms ✓ src/services/worktreeCleanup.test.ts (3 tests) 2ms ✓ src/providers/__tests__/provider-config.test.ts (50 tests) 11ms ✓ src/providers/__tests__/presets/custom-provider.test.ts (11 tests) 5ms Test Files 339 passed (339) Tests 9193 passed | 3 skipped (9196) Start at 22:47:41 Duration 29.66s (transform 44.57s, setup 3.48s, collect 338.93s, tests 61.83s, environment 64ms, prepare 27.80s) JUNIT report written to /startdir/src/qwen-code/packages/core/junit.xml % Coverage report from v8 > @qwen-code/sdk@0.1.7 test > vitest run --exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts RUN v1.6.1 /startdir/src/qwen-code/packages/sdk-typescript ✓ test/unit/daemonEvents.test.ts (46 tests) 15ms 2026-05-21 22:48:15 [ERROR] [ProcessTransport] Failed to initialize CLI process: Transport start aborted 2026-05-21 22:48:15 [ERROR] [ProcessTransport] Failed to initialize CLI process: Transport start aborted 2026-05-21 22:48:15 [ERROR] [ProcessTransport] CLI process error: Spawn failed 2026-05-21 22:48:15 [ERROR] [ProcessTransport] CLI process exited with code 1 2026-05-21 22:48:15 [ERROR] [ProcessTransport] CLI process terminated by signal SIGTERM 2026-05-21 22:48:16 [ERROR] [ProcessTransport] CLI process error: Process error 2026-05-21 22:48:16 [DEBUG] [ProcessTransport] Spawning CLI (native): qwen --input-format stream-json --output-format stream-json --channel=SDK 2026-05-21 22:48:16 [ERROR] [ProcessTransport] CLI process exited with code 1 2026-05-21 22:48:16 [ERROR] [ProcessTransport] CLI process error: Process error 2026-05-21 22:48:16 [ERROR] [ProcessTransport] CLI process exited with code 1 2026-05-21 22:48:16 [ERROR] [ProcessTransport] CLI process terminated by signal SIGKILL 2026-05-21 22:48:16 [INFO] [ProcessTransport] CLI process started successfully 2026-05-21 22:48:16 [DEBUG] [ProcessTransport] Forking CLI (node): /path/to/cli.js --input-format stream-json --output-format stream-json --channel=SDK 2026-05-21 22:48:16 [INFO] [ProcessTransport] CLI process started successfully ✓ test/unit/ProcessTransport.test.ts (71 tests) 148ms ✓ test/unit/DaemonSessionClient.test.ts (19 tests) 36ms 2026-05-21 22:48:16 [ERROR] [Query] Control response error for request f9830fed-7aea-4f1d-89ad-b780768758fb: Test error 2026-05-21 22:48:16 [ERROR] [Query] Initialization error: Test error ✓ test/unit/DaemonClient.test.ts (118 tests) 346ms ✓ test/unit/cliPath.test.ts (33 tests) 17ms ✓ test/unit/daemon-sse.test.ts (18 tests) 17ms ✓ test/unit/Stream.test.ts (22 tests) 11ms ✓ test/unit/createSdkMcpServer.test.ts (18 tests) 21ms ✓ test/unit/daemon-public-surface.test.ts (4 tests) 3ms 2026-05-21 22:48:28 [ERROR] [Query] Initialization error: Query is closed ✓ test/unit/DaemonAuthFlow.test.ts (14 tests) 13088ms ✓ test/unit/createQuery.test.ts (3 tests) 25ms ✓ test/unit/approval-mode-drift.test.ts (1 test) 2ms 2026-05-21 22:48:39 [ERROR] [Query] Control response error for request 85766ebe-50b5-45b9-a5cd-585743ca584c: Malformed error ✓ test/unit/Query.test.ts (54 tests) 23807ms Test Files 13 passed (13) Tests 421 passed (421) Start at 22:48:15 Duration 24.62s (transform 4.34s, setup 0ms, collect 7.46s, tests 37.54s, environment 3ms, prepare 1.07s) > qwen-code-vscode-ide-companion@0.16.0 test > vitest run --exclude=**/{qwenConnectionHandler,useAtCompletion}.test.ts RUN v3.2.4 /startdir/src/qwen-code/packages/vscode-ide-companion 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 > tool_call handling > forwards rawOutput for structured agent execution updates [SessionUpdateHandler] Processing update type: tool_call_update 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 > available skills handling > reads available skills from available_commands_update metadata [SessionUpdateHandler] Processing update type: available_commands_update stdout | src/services/qwenSessionUpdateHandler.test.ts > QwenSessionUpdateHandler > available skills handling > clears available skills when metadata is absent [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/services/qwenSessionUpdateHandler.test.ts (16 tests) 32ms stderr | src/services/conversationStore.test.ts > ConversationStore > replaceMessages returns false when the conversation is missing [ConversationStore] replaceMessages: conversation not found: missing stderr | src/services/conversationStore.test.ts > ConversationStore > renameConversationId returns false when the target id already exists [ConversationStore] renameConversationId: target conversation already exists: session-1 stderr | src/services/conversationStore.test.ts > ConversationStore > truncateFromUserTurn returns false when the target turn is missing [ConversationStore] truncateFromUserTurn: target turn not found: 4 ✓ src/webview/utils/discontinuedModel.test.ts (12 tests) 12ms ✓ src/services/conversationStore.test.ts (8 tests) 27ms ✓ src/utils/editorGroupUtils.test.ts (12 tests) 9ms 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) 18ms ✓ src/utils/paths.test.ts (18 tests) 27ms ✓ src/commands/index.test.ts (4 tests) 24ms ✓ src/webview/providers/chatViewRegistration.test.ts (6 tests) 18ms stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > proceeds with a second connect after the first one fails [DaemonIdeConnection] Previous connect failed: { error: 'first connect failed' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Sending prompt: { sessionId: 'session-1' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Prompt completed: { sessionId: 'session-1', stopReason: 'end_turn' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Sending prompt: { sessionId: 'session-1' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Prompt completed: { sessionId: 'session-1', stopReason: 'end_turn' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Sending prompt: { sessionId: 'session-1' } stderr | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > sends prompts through the bound daemon session [DaemonIdeConnection] Prompt failed: { sessionId: 'session-1', error: 'prompt failed' } stderr | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > cancels permission requests by default and for reject options [DaemonIdeConnection] Permission option not advertised; cancelling { requestId: 'request-3', optionId: 'stale-option' } stderr | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > forwards ask-user-question answers and cancels invalid selections [DaemonIdeConnection] AskUserQuestion option not advertised; cancelling { requestId: 'ask-3', optionId: 'stale-option' } stderr | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > ignores malformed permission events [DaemonIdeConnection] Malformed permission request data ✓ src/webview/utils/utils.test.ts (15 tests) 6ms stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > surfaces session_died as a disconnect [DaemonIdeConnection] Session died: { sessionId: 'session-1', reason: 'agent exited' } [DaemonIdeConnection] Clearing session: { sessionId: 'session-1', reason: 'agent exited' } stderr | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > ignores stale session_died events from another session [DaemonIdeConnection] Malformed session_died event stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > surfaces event stream failures and normal stream completion [DaemonIdeConnection] Event stream session: { sessionId: 'session-1' } [DaemonIdeConnection] Clearing session: { sessionId: 'session-1', reason: 'daemon_error' } stdout | src/services/daemonIdeConnection.test.ts > DaemonIdeConnection > surfaces event stream failures and normal stream completion [DaemonIdeConnection] Clearing session: { sessionId: 'session-1', reason: 'stream_ended' } ✓ src/services/acpConnection.test.ts (16 tests) 16ms ✓ src/services/sessionExportService.test.ts (9 tests) 30ms ✓ src/services/daemonIdeConnection.test.ts (19 tests) 86ms ✓ src/open-files-manager.test.ts (17 tests) 40ms ✓ src/webview/utils/slashCommandUtils.test.ts (6 tests) 6ms ✓ src/webview/utils/contextUsage.test.ts (4 tests) 7ms ✓ src/webview/providers/WebViewContent.test.ts (5 tests) 8ms ✓ src/webview/hooks/useWebViewMessages.test.ts (1 test) 9ms ✓ src/webview/providers/ChatWebviewViewProvider.test.ts (2 tests) 5ms ✓ src/webview/utils/completionUtils.test.ts (4 tests) 7ms ✓ src/webview/providers/ChatProviderRegistry.test.ts (2 tests) 18ms ✓ src/package.test.ts (1 test) 6ms ✓ src/utils/errorMessage.test.ts (2 tests) 2ms ✓ src/webview/hooks/useImage.test.ts (2 tests) 47ms ✓ src/utils/imageSupport.bundle.test.ts (2 tests) 152ms stderr | src/webview/hooks/useWebViewMessages.test.tsx > useWebViewMessages > ignores conversation rewind events when the target turn is missing [useWebViewMessages] conversationRewound target turn not found: 99 ✓ src/webview/hooks/useWebViewMessages.test.tsx (11 tests) 137ms ✓ src/webview/hooks/useToolCalls.test.tsx (2 tests) 28ms ✓ src/webview/components/messages/toolcalls/index.test.tsx (3 tests) 37ms ✓ src/webview/hooks/message/useMessageHandling.test.tsx (3 tests) 55ms ✓ src/webview/components/layout/ProviderSetupForm.test.tsx (1 test) 60ms ✓ src/webview/components/layout/Onboarding.test.tsx (1 test) 32ms ✓ src/webview/hooks/useMessageSubmit.test.ts (19 tests) 23ms ✓ src/webview/components/layout/ModelSelector.test.tsx (9 tests) 100ms ✓ src/webview/App.test.tsx (8 tests) 143ms ✓ src/webview/components/layout/InputForm.test.tsx (2 tests) 46ms ✓ src/utils/imageSupport.test.ts (1 test) 3ms ✓ src/webview/handlers/AuthMessageHandler.test.ts (10 tests) 11ms ✓ src/utils/acpModelInfo.test.ts (15 tests) 8ms stderr | src/webview/utils/imageHandler.test.ts > imageHandler > returns null when file write throws [ImageHandler] Failed to save image: Error: disk full at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/utils/imageHandler.test.ts:110:41 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > searches files using fuzzy search when query is provided [FileMessageHandler] handleGetWorkspaceFiles start { query: 'txt', requestId: 7 } [FileMessageHandler] Searching workspace files with fuzzy search for query txt stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > searches files using fuzzy search when query is provided [FileMessageHandler] Sent final workspaceFiles 2 stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > filters ignored paths in non-query mode [FileMessageHandler] handleGetWorkspaceFiles start { query: undefined, requestId: 7 } [FileMessageHandler] Sent initial workspaceFiles (open tabs/active) 0 stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > filters ignored paths in non-query mode [FileMessageHandler] Sent final workspaceFiles 1 stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > createAndOpenTempFile viewColumn selection > opens in left group when chat webview has a left neighbor [FileMessageHandler] Created and opened readonly file: [object Object] in viewColumn: 1 stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > createAndOpenTempFile viewColumn selection > opens in right group when no left neighbor but right exists [FileMessageHandler] Created and opened readonly file: [object Object] in viewColumn: 2 stdout | src/webview/handlers/FileMessageHandler.test.ts > FileMessageHandler > createAndOpenTempFile viewColumn selection > falls back to ViewColumn.Beside when neither left nor right neighbor exists [FileMessageHandler] Created and opened readonly file: [object Object] in viewColumn: -2 ✓ src/webview/handlers/FileMessageHandler.test.ts (5 tests) 11ms ✓ src/webview/utils/imageHandler.test.ts (11 tests) 17ms stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > configures sidebar views with workspace/temp roots and resolves image paths through the attached webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > configures sidebar views with workspace/temp roots and resolves image paths through the attached webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > reports clipboard copy success back to the requesting webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > reports clipboard copy success back to the requesting webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > reports clipboard copy failures back to the requesting webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > reports clipboard copy failures back to the requesting webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > streams slash-command notifications into the attached webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > streams slash-command notifications into the attached webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > re-sends cached available commands when the webview becomes ready [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > re-sends cached available commands when the webview becomes ready [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > does not special-case plain insight slash notifications in the provider [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > does not special-case plain insight slash notifications in the provider [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes structured insight progress markers into the attached webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes structured insight progress markers into the attached webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes structured insight progress markers even when command text is normalized differently [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes structured insight progress markers even when command text is normalized differently [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > clears structured insight progress when the ready marker arrives [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > clears structured insight progress when the ready marker arrives [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > opens the insight report in the browser when requested from the webview [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > opens the insight report in the browser when requested from the webview [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes resolved image paths back to the requesting attached webview even when a panel exists [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > routes resolved image paths back to the requesting attached webview even when a panel exists [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > marks rejected switch_mode permission requests as failed without cancelling the session [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > marks rejected switch_mode permission requests as failed without cancelling the session [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > replays available skills to the webview after webviewReady [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > replays available skills to the webview after webviewReady [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > replays available commands to the webview after webviewReady [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.attachToView > replays available commands to the webview after webviewReady [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > does not report success for api-key settings without interactive auth data [WebViewProvider] Skipping VSCode settings sync for api-key provider; interactive auth owns provider details stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > only syncs non-secret VS Code settings from ~/.qwen/settings.json [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > reacts to auth-related qwen-code setting changes [WebViewProvider] Auth-related qwen-code settings changed by user, syncing... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > clears persisted credentials and disconnects when apiKey is emptied [WebViewProvider] Auth-related qwen-code settings changed by user, syncing... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > clears persisted credentials and disconnects when apiKey is emptied [WebViewProvider] apiKey cleared — de-authenticating and clearing persisted credentials stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider settings sync > does not de-auth when non-apiKey auth settings change on an api-key provider [WebViewProvider] Auth-related qwen-code settings changed by user, syncing... stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider initial model inheritance > applies the requested initial model after creating a new session [WebViewProvider] Initializing with new session (skipping restoration) stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider initial model inheritance > applies the requested initial model after creating a new session [WebViewProvider] ACP session created successfully stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider initial model inheritance > applies the requested initial model after creating a new session [WebViewProvider] Initializing empty conversation stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider initial model inheritance > applies the requested initial model after creating a new session [WebViewProvider] Empty conversation initialized: null stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > does not create conversation state or send an empty prompt when all pasted images fail to materialize [SessionMessageHandler] handleSendMessage called with: stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > does not create conversation state or send an empty prompt when all pasted images fail to materialize [SessionMessageHandler] Failed to attach the pasted image. Nothing was sent. Please paste the image again. stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > sends formatted prompt text so session restore can reconstruct pasted images [SessionMessageHandler] handleSendMessage called with: 这是什么内容 stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > sends formatted prompt text so session restore can reconstruct pasted images [SessionMessageHandler] No active conversation, creating one... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows orange dot and notification when a long task completes while panel is not active [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows orange dot and notification when a long task completes while panel is not active [WebViewProvider] Attempting connection... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > keeps the conversation store aligned with the ACP session id before editing [SessionMessageHandler] handleSendMessage called with: first prompt stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > keeps the conversation store aligned with the ACP session id before editing [SessionMessageHandler] No active conversation, creating one... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > keeps the conversation store aligned with the ACP session id before editing [SessionMessageHandler] handleSendMessage called with: edited prompt stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show notification for short tasks (< 20s) [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show notification for short tasks (< 20s) [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show notification when user is watching the panel [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show notification when user is watching the panel [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows blue dot and notification for permission requests when panel is not active [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows blue dot and notification for permission requests when panel is not active [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > blue dot takes priority over orange dot [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > blue dot takes priority over orange dot [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not send duplicate idle notifications for multi-turn tasks [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not send duplicate idle notifications for multi-turn tasks [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not notify when notifications setting is disabled [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not notify when notifications setting is disabled [WebViewProvider] Attempting connection... stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > cancellation resets agentStartTime so the next short task does not trigger phantom notification [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > cancellation resets agentStartTime so the next short task does not trigger phantom notification [WebViewProvider] Attempting connection... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > does not switch to a colliding ACP session id when rename fails [SessionMessageHandler] handleSendMessage called with: first prompt stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > does not switch to a colliding ACP session id when rename fails [SessionMessageHandler] No active conversation, creating one... stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > does not switch to a colliding ACP session id when rename fails [SessionMessageHandler] Failed to align conversation store with ACP session id: conversation-1 session-1 stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > syncs ACP session id alignment through the owning router setter [SessionMessageHandler] handleSendMessage called with: first prompt stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > syncs ACP session id alignment through the owning router setter [SessionMessageHandler] No active conversation, creating one... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > rewinds the active ACP session before sending an edited message [SessionMessageHandler] handleSendMessage called with: edited prompt stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores the edited conversation snapshot when replacement send fails [SessionMessageHandler] handleSendMessage called with: edited prompt stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores the edited conversation snapshot when replacement send fails [SessionMessageHandler] Error sending message: Error: send failed at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/SessionMessageHandler.test.ts:534:46 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > continues edits with ACP-only rewind when no local snapshot exists [SessionMessageHandler] handleSendMessage called with: edited prompt stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > continues edits with ACP-only rewind when no local snapshot exists [SessionMessageHandler] Local conversation snapshot missing before edit; continuing with ACP rewind only. stderr | src/services/settingsWriter.test.ts > settingsWriter > applyProviderInstallPlanToFile > throws on malformed settings file instead of silently overwriting it [settingsWriter] Failed to parse /tmp/qwen-vscode-settings-EKtdVT/.qwen/settings.json; refusing to overwrite a malformed file. SyntaxError: Expected ',' or ']' after array element in JSON at position 17 (line 1 column 18) at JSON.parse () at readSettings (/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts:184:17) at createFileSettingsAdapter (/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts:423:14) at Module.applyProviderInstallPlanToFile (/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts:528:20) at /startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.test.ts:195:20 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show dot when dotIndicator setting is disabled [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > does not show dot when dotIndicator setting is disabled [WebViewProvider] Attempting connection... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > recovers a missing edit snapshot from persisted session messages [SessionMessageHandler] handleSendMessage called with: edited prompt stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores the edited conversation snapshot when ACP rewind fails [SessionMessageHandler] handleSendMessage called with: edited prompt stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > notifies when VS Code is focused but panel is not visible [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > notifies when VS Code is focused but panel is not visible [WebViewProvider] Attempting connection... stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores the edited conversation snapshot when ACP rewind fails [SessionMessageHandler] Failed to rewind session: Error: rewind failed at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/SessionMessageHandler.test.ts:736:48 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores store and ACP history when saving the edited user message fails [SessionMessageHandler] handleSendMessage called with: edited prompt stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > restores store and ACP history when saving the edited user message fails [SessionMessageHandler] Failed to save user message: Error: storage failed at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/SessionMessageHandler.test.ts:806:45 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > rejects edit submissions with invalid target turn indexes [SessionMessageHandler] handleSendMessage called with: edited prompt stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > notifies when VS Code is not focused but panel is visible [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > notifies when VS Code is not focused but panel is visible [WebViewProvider] Attempting connection... stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > rejects edit submissions with invalid target turn indexes [SessionMessageHandler] Invalid message edit target. -1 stderr | src/services/settingsWriter.test.ts > settingsWriter > snapshotSettingsForRollback / restoreSettingsSnapshot > snapshot returns null on a malformed file and restore is then a no-op [settingsWriter] Failed to parse /tmp/qwen-vscode-settings-K5zrV4/.qwen/settings.json; refusing to overwrite a malformed file. SyntaxError: Expected ',' or ']' after array element in JSON at position 17 (line 1 column 18) at JSON.parse () at readSettings (/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts:184:17) at Module.snapshotSettingsForRollback (/startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.ts:546:28) at /startdir/src/qwen-code/packages/vscode-ide-companion/src/services/settingsWriter.test.ts:352:24 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) [settingsWriter] snapshotSettingsForRollback failed; credential rollback disabled: Error stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows blue dot and notification for askUserQuestion when panel is not active [WebViewProvider] Attaching to WebviewView (viewType=qwen-code.chatView.sidebar) [WebViewProvider] Attempting to restore auth state and connection for view... [WebViewProvider] Syncing ~/.qwen/settings.json → VSCode settings stdout | src/webview/providers/WebViewProvider.test.ts > Notification & dot indicator > shows blue dot and notification for askUserQuestion when panel is not active [WebViewProvider] Attempting connection... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > keeps currentConversationId aligned with the archived sessionId when session/load falls back to a new ACP session [SessionMessageHandler] Switching to session: archived-session stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > keeps currentConversationId aligned with the archived sessionId when session/load falls back to a new ACP session [SessionMessageHandler] session/load failed, using fallback: Error: session not found on server at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/SessionMessageHandler.test.ts:892:28 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > forces a fresh ACP session when the webview requests a new session [SessionMessageHandler] Creating new Qwen session... stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > intercepts /export html and uses the VSCode export flow instead of sending a prompt [SessionMessageHandler] handleSendMessage called with: /export html ✓ src/services/settingsWriter.test.ts (14 tests) 41ms stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > restores the snapshot when the reconnect leaves authState !== true [WebViewProvider] authInteractive: provider=deepseek, host=api.deepseek.com stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > prefers the active ACP session id over the local conversation id when exporting [SessionMessageHandler] handleSendMessage called with: /export html stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > reports bare /export as a missing subcommand instead of exporting [SessionMessageHandler] handleSendMessage called with: /export stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > reports export failures back to the user [SessionMessageHandler] handleSendMessage called with: /export md stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > reports export failures back to the user [SessionMessageHandler] Failed to export session: Error: disk full at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/handlers/SessionMessageHandler.test.ts:1084:47 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:155:11 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:26 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1897:20 at new Promise () at runWithTimeout (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1863:10) at runTest (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1574:12) at processTicksAndRejections (node:internal/process/task_queues:104:5) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) at runSuite (file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:1729:8) stdout | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > encodes exported file links before rendering markdown [SessionMessageHandler] handleSendMessage called with: /export html stderr | src/webview/handlers/SessionMessageHandler.test.ts > SessionMessageHandler > handleSetModel — discontinued model defensive validation (Issue #3745) > rejects a non-runtime Qwen OAuth model and surfaces an error [SessionMessageHandler] Rejected discontinued model qwen3-coder-plus(qwen-oauth) ✓ src/webview/handlers/SessionMessageHandler.test.ts (23 tests) 55ms stdout | src/services/qwenAgentManager.test.ts > QwenAgentManager.createNewSession > creates a fresh ACP session when explicitly requested even if one is already active [QwenAgentManager] Creating new session... stdout | src/services/qwenAgentManager.test.ts > QwenAgentManager.createNewSession > creates a fresh ACP session when explicitly requested even if one is already active [QwenAgentManager] newSession returned: { "sessionId": "session-2" } [QwenAgentManager] New session created with ID: session-2 stdout | src/services/qwenAgentManager.test.ts > QwenAgentManager.createNewSession > creates a distinct fresh session after an in-flight bootstrap when forceNew is requested [QwenAgentManager] createNewSession: session creation already in flight stdout | src/services/qwenAgentManager.test.ts > QwenAgentManager.createNewSession > creates a distinct fresh session after an in-flight bootstrap when forceNew is requested [QwenAgentManager] Creating new session... stdout | src/services/qwenAgentManager.test.ts > QwenAgentManager.createNewSession > creates a distinct fresh session after an in-flight bootstrap when forceNew is requested [QwenAgentManager] newSession returned: { "sessionId": "session-2" } [QwenAgentManager] New session created with ID: session-2 ✓ src/services/qwenAgentManager.test.ts (9 tests) 10ms ✓ src/ide-server.test.ts (13 tests | 1 skipped) 170ms stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > disconnects the agent after rolling back rejected credentials [WebViewProvider] authInteractive: provider=deepseek, host=api.deepseek.com stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > does NOT restore when the reconnect authenticates (authState === true) [WebViewProvider] authInteractive: provider=deepseek, host=api.deepseek.com stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > swallows a rollback write failure so the authError message still sends [WebViewProvider] authInteractive: provider=deepseek, host=api.deepseek.com 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) 89ms stderr | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > swallows a rollback write failure so the authError message still sends [WebViewProvider] settings rollback failed: Error: EPERM: rename failed at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1868:13 at mockCall (file:///startdir/src/qwen-code/node_modules/@vitest/spy/dist/index.js:96:15) at spy (file:///startdir/src/qwen-code/node_modules/tinyspy/dist/index.js:47:103) at safeRollback (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts:1363:9) at WebViewProvider.handleAuthInteractive (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts:1415:9) at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1884:5 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:20 stdout | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > rolls back + disconnects + reports authError when doInitializeAgentConnection throws (outer catch) [WebViewProvider] authInteractive: provider=deepseek, host=api.deepseek.com stderr | src/webview/providers/WebViewProvider.test.ts > WebViewProvider.handleAuthInteractive credential rollback > rolls back + disconnects + reports authError when doInitializeAgentConnection throws (outer catch) [WebViewProvider] authInteractive failed: Error: disk exploded mid-reconnect at WebViewProvider. (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1921:13) at WebViewProvider.mockCall (file:///startdir/src/qwen-code/node_modules/@vitest/spy/dist/index.js:96:15) at WebViewProvider.spy [as doInitializeAgentConnection] (file:///startdir/src/qwen-code/node_modules/tinyspy/dist/index.js:47:103) at WebViewProvider.handleAuthInteractive (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts:1400:18) at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1924:5 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:20 [WebViewProvider] settings rollback failed: Error: EPERM: rename failed at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1868:13 at mockCall (file:///startdir/src/qwen-code/node_modules/@vitest/spy/dist/index.js:96:15) at spy (file:///startdir/src/qwen-code/node_modules/tinyspy/dist/index.js:47:103) at safeRollback (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts:1363:9) at WebViewProvider.handleAuthInteractive (/startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.ts:1437:7) at /startdir/src/qwen-code/packages/vscode-ide-companion/src/webview/providers/WebViewProvider.test.ts:1924:5 at file:///startdir/src/qwen-code/node_modules/@vitest/runner/dist/chunk-hooks.js:752:20 ✓ src/webview/providers/WebViewProvider.test.ts (47 tests) 1669ms ✓ WebViewProvider.handleAuthInteractive credential rollback > restores the snapshot when the reconnect leaves authState !== true 308ms ✓ WebViewProvider.handleAuthInteractive credential rollback > disconnects the agent after rolling back rejected credentials 306ms ✓ WebViewProvider.handleAuthInteractive credential rollback > does NOT restore when the reconnect authenticates (authState === true) 306ms ✓ WebViewProvider.handleAuthInteractive credential rollback > swallows a rollback write failure so the authError message still sends 314ms ✓ WebViewProvider.handleAuthInteractive credential rollback > rolls back + disconnects + reports authError when doInitializeAgentConnection throws (outer catch) 307ms Test Files 45 passed (45) Tests 410 passed | 1 skipped (411) Start at 22:48:40 Duration 11.28s (transform 16.86s, setup 0ms, collect 117.92s, tests 3.36s, environment 4.17s, prepare 6.28s) ==> ERROR: A failure occurred in check(). Aborting... ==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_50eb897e-ab92-4df7-a5ab-12fd05118ad2/build