Skip to content

fix(e2e): use getByRole('checkbox') for reka-ui Checkbox + cookie scope fix #561

fix(e2e): use getByRole('checkbox') for reka-ui Checkbox + cookie scope fix

fix(e2e): use getByRole('checkbox') for reka-ui Checkbox + cookie scope fix #561

Triggered via pull request June 10, 2026 20:04
Status Failure
Total duration 7m 1s
Artifacts 1

ci.yml

on: pull_request
Detect Changes
8s
Detect Changes
Build Dashboard
20s
Build Dashboard
Test (Frontend)
43s
Test (Frontend)
Markdown
0s
Markdown
Security / Trivy (filesystem + deps)
26s
Security / Trivy (filesystem + deps)
Security / Gitleaks (PR commits only)
16s
Security / Gitleaks (PR commits only)
Security / Semgrep (SAST)
31s
Security / Semgrep (SAST)
Coverage (Rust)
2m 7s
Coverage (Rust)
Matrix: Build (Darwin validation)
Matrix: Build (cross-compile validation)
Matrix: Build (Windows validation)
Matrix: test-multi
Test (E2E)
0s
Test (E2E)
SonarCloud
0s
SonarCloud
Fit to window
Zoom out
Zoom in

Annotations

10 errors
src/components/ApiKeyForm.spec.ts > ApiKeyForm > allowed providers > shows helper text "Leave empty to allow all providers": apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > allowed providers > renders one checkbox per provider: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope toggling > emits update:modelValue when a scope is toggled off: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope toggling > emits update:modelValue when a scope is toggled on: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > default scope checkboxes > checks every scope by default EXCEPT admin: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope rendering > does not flag non-admin scopes as dangerous: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope rendering > flags the admin scope with a danger indicator: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope rendering > renders scope description text: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope rendering > groups scopes under chat, providers, admin headings: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10
src/components/ApiKeyForm.spec.ts > ApiKeyForm > scope rendering > renders all 5 scopes from the registry: apps/rook/dashboard/src/components/ApiKeyForm.vue#L207
Error: [vitest] No "ChevronDown" export is defined on the "@lucide/vue" mock. Did you forget to return it from "vi.mock"? If you need to partially mock a module, you can use "importOriginal" helper inside: vi.mock(import("@lucide/vue"), async (importOriginal) => { const actual = await importOriginal() return { ...actual, // your mocked methods } }) ❯ Proxy.get ChevronDown src/components/ApiKeyForm.vue:207:34 ❯ Object.get node_modules/.pnpm/@VUE+reactivity@3.6.0-beta.14/node_modules/@vue/reactivity/dist/reactivity.cjs.js:1260:77 ❯ src/components/ApiKeyForm.vue:329:77 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10 ❯ renderSlot node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:2533:52 ❯ src/components/ui/accordion/AccordionTrigger.vue:28:7 ❯ renderFnWithContext node_modules/.pnpm/@VUE+runtime-core@3.6.0-beta.14/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:690:10

Artifacts

Produced during runtime
Name Size Digest
dashboard-dist Expired
2.54 MB
sha256:86763fc6a6cfebcc0ebade7b4c600cdd979795147de7d507f5213fc38631343e