Skip to content

feat: add settings import with encrypted credential migration #418

feat: add settings import with encrypted credential migration

feat: add settings import with encrypted credential migration #418

Triggered via pull request August 27, 2026 14:10
Status Failure
Total duration 1m 28s
Artifacts

ci.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

2 errors
ci
Process completed with exit code 1.
[browser] tests/components/settings/SettingsPage.test.tsx > SettingsPage — Data: Export with encrypted credentials > dismissing the code modal (Cancel) downloads nothing and leaves no residual state: tests/components/settings/SettingsPage.test.tsx#L1533
TestingLibraryElementError: Unable to find an accessible element with the role "button" and name "Export" Here are the accessible roles: alertdialog: Name "Save your one-time code": <div aria-describedby="dialog-cl-1376-description" aria-labelledby="dialog-cl-1376-title" class="fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-md bg-base-100 rounded-xl shadow-xl z-[51] p-6 flex flex-col gap-4" data-closed="" id="dialog-cl-1376-content" role="alertdialog" style="pointer-events: auto;" tabindex="-1" /> -------------------------------------------------- heading: Name "Save your one-time code": <h2 class="text-lg font-semibold" id="dialog-cl-1376-title" /> -------------------------------------------------- paragraph: Name "": <p class="text-sm text-base-content/70" id="dialog-cl-1376-description" /> -------------------------------------------------- button: Name "Cancel": <button class="btn btn-sm btn-ghost" type="button" /> Name "I've saved my code — download": <button class="btn btn-sm btn-primary" type="button" /> -------------------------------------------------- Ignored nodes: comments, script, style <body style="pointer-events: none;" > <div aria-hidden="true" > <div class="bg-base-200 min-h-screen" > <div class="settings-header sticky top-0 z-40 border-b border-base-300 bg-base-100" > <div class="mx-auto max-w-5xl px-4 sm:px-6 transition-[padding] duration-200 py-6" > <div class="flex items-center gap-3" > <a aria-label="Back to dashboard" class="text-base-content/40 hover:text-base-content/60" href="/dashboard" > <svg aria-hidden="true" class="h-5 w-5" fill="currentColor" viewBox="0 0 20 20" > <path clip-rule="evenodd" d="M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z" fill-rule="evenodd" /> </svg> </a> <h1 class="text-2xl font-bold text-base-content" > Settings </h1> </div> </div> </div> <div class="mx-auto max-w-5xl px-4 py-8 sm:px-6" > <div class="flex flex-col lg:flex-row gap-6 lg:gap-8" > <nav aria-label="Settings navigation" class="hidden lg:block w-44 shrink-0 sticky top-20 self-start" > <div class="mt-4 first:mt-0" > <p class="text-xs font-semibold uppercase tracking-wider text-base-content/40 mb-1 px-2" > Data Sources </p> <button aria-current="location" class="block w-full text-left text-sm px-2 py-1 rounded transition-colors bg-primary/10 text-primary font-medium border-l-2 border-primary" type="button" > Orgs & Repos </button> <button class="block w-full text-left text-sm px-2 py-1 rounded transition-colors text-base-content/60 hover:text-base-content hover:bg-base-200 border-l-2 border-transparent" type="button" > Tracked Users </button> <button class="block w-full text-left text-sm px-2 py-1 rounded transition-colors text-base-content/60 hover:text-base-content hover:bg-base-200 border-l-2 border-transparent" type="button" > Refresh </button> <button class="block w-full text-left text-sm px-2 py-1 rounded