Improve operational UX, recovery flows, and action safety

Implement the approved UX review across Fleet, Betas, Library, deployments, and Settings. Add reviewed promotion and reconciliation plans, atomic queued-removal cancellation, recoverable beta drafts and launch inputs, accessible controls, and mobile improvements.

Validated with 473 tests, a clean typecheck, production build, and isolated desktop/mobile browser walkthroughs. Include the review and implementation coverage notes.
This commit is contained in:
2026-09-19 21:34:34 -04:00
parent 940f81e6ca
commit 8ac420fe61
83 changed files with 2574 additions and 1190 deletions
+17
View File
@@ -0,0 +1,17 @@
import { replaceState } from '$app/navigation';
import { page } from '$app/stores';
import { get } from 'svelte/store';
/** Keep library working views shareable and restore them on browser Back. */
export function saveLibraryContext(values: Record<string, string | number>, defaults: Record<string, string | number> = {}) {
const url = new URL(window.location.href);
for (const [key, value] of Object.entries(values)) {
if (value === '' || value === defaults[key]) url.searchParams.delete(key);
else url.searchParams.set(key, String(value));
}
if (url.href !== window.location.href) replaceState(url, get(page).state);
}
export function libraryLimit(params: URLSearchParams): number {
return Math.max(25, Math.min(10000, Number.parseInt(params.get('limit') ?? '25', 10) || 25));
}