[READ-ONLY] Mirror of https://github.com/vitest-dev/vscode. VS Code extension for Vitest vitest.dev/vscode
testing vitest vscode

feat: support opening trace view (#811) master

* feat: open html trace reports Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: scope trace report to run Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: derive trace report path Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: load worker config over rpc Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * fix: preserve trace report hash route Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: pass worker config on ready Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * fix: scope trace report menu Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: require worker config Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: group worker config metadata Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: group worker config metadata Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: resolve html report path in worker Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: align worker config declaration Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * nit * refactor: rely on trace command context Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: clarify browser fallback Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: traverse trace tasks with queue Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: scope trace queue per file Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: link trace report conventions Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * types: narrow trace artifact task Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: explain artifact type compatibility Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: explain trace action context Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * test: add Vitest 5 browser sample Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * feat: add trace report gutter action Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * test: pin trace sample to Vitest RC Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * test: align browser sample dependencies Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * nit * refactor: align trace view naming Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: name trace view manager instances Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: name worker ready metadata Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * test: use stable Vitest 5 sample Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * fix: align worker Vite dependency Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: document Trace View workflow Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: position Trace View section Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: use Markdown trace image Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: store Trace View screenshot Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: preserve default reporters Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * nit * feat: open trace view in extension managed webview (#819) * feat: prototype reusable trace webview Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * refactor: simplify trace webview navigation Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * fix: preserve trace webview origin and allow Google Fonts Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * fix: select available traces when refreshing the report Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * fix: preserve trace step when refreshing the same test Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * docs: simplify trace view description Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * docs: remove trace webview prototype note Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> * fix: remove trace webview padding Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * fix: restore light trace background Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * feat: use focused trace layout Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * docs: update trace view screenshot Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * fix: preserve trace attempt on refresh Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> * refactor: extract trace webview HTML transform Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: build trace selection hash directly Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: remove trace metadata cache busting Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: clarify trace metadata URL comment Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: clarify trace asset URL comment Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: extract trace webview CSP string Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: inline webview CSP source Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: extract trace webview CSS string Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: extract trace webview bootstrap Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * nit * refactor: reload webview when opening traces Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: name debounced trace refresh Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: simplify trace hash serialization Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: clarify trace view URL hash names Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: inline trace URL hash serialization Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * refactor: separate trace reconciliation from refresh Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: reconcile trace target on results update Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: type trace selection message Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: type trace message receiver Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: remove trace message payload validation Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * refactor: align trace selection message fields Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: follow latest trace report Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: refresh trace reports from filesystem events Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: group active trace view state Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: simplify trace target updates Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: clarify trace view state naming Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: remove redundant trace target assignment Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: restore latest trace target fallback Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: select trace from latest run across processes Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: explain trace view lifecycle steps Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: clarify trace open action comments Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: keep selected trace when still available Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * refactor: use revision for stale trace loads Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: let report UI handle missing traces Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: narrow trace report read error handling Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * nit * refactor: simplify trace message revision guard Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: update trace view screenshot Co-authored-by: Codex (GPT-6) <noreply@openai.com> --------- Co-authored-by: hi-ogawa-agent <266689927+hi-ogawa-agent@users.noreply.github.com> Co-authored-by: OpenCode (gpt-6-astra) <noreply@opencode.ai> Co-authored-by: Hiroshi Ogawa <4232207+hi-ogawa@users.noreply.github.com> Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: simplify trace report loading Co-authored-by: Codex (GPT-6) <noreply@openai.com> * chore: remove worker direct Vite dependency Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: outline trace panel behavior Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: explain trace view state lifecycle Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: clarify trace selection preservation Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: note trace reloads from external runs Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: name trace report entries explicitly Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: combine trace reload explanation Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: explain how trace selection survives reloads Co-authored-by: Codex (GPT-6) <noreply@openai.com> * docs: trim trace panel lifecycle comment Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: smoke test opening trace view Co-authored-by: Codex (GPT-6) <noreply@openai.com> * nit * feat: open trace view from command palette Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: load worker vitest config types Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: align worker Vite dependency Co-authored-by: Codex (GPT-6) <noreply@openai.com> * revert: open trace view from command palette Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: explain custom menu setting Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: describe trace view smoke steps Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: align trace test item selector Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: align Playwright and install Chromium in CI Co-authored-by: Codex (GPT-6) <noreply@openai.com> * test: allow 15 seconds for trace results Co-authored-by: Codex (GPT-6) <noreply@openai.com> * refactor: remove trace view revision tracking Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: allow external trace snapshot resources Co-authored-by: Codex (GPT-6) <noreply@openai.com> * fix: follow vscode theme in trace view Co-authored-by: Codex (GPT-6) <noreply@openai.com> --------- Co-authored-by: Hiroshi Ogawa <4232207+hi-ogawa@users.noreply.github.com> Co-authored-by: OpenCode (gpt-5.6-sol) <noreply@opencode.ai> Co-authored-by: hi-ogawa-agent <266689927+hi-ogawa-agent@users.noreply.github.com> Co-authored-by: Codex (GPT-6) <noreply@openai.com>