feat(frontend): guided-minimalism WebUI overhaul — 12-way audit + fix fleet

Land the pre-talk WebUI campaign: first-frame stability (pre-paint theme
boot via CSP-safe public/theme-boot.js, self-hosted fonts + OFL license),
streaming performance (rAF token batching, throttled flush, streaming
markdown with deferred highlight, 160-row windowing, swarm state in its
own store slice with per-run coalescing), correctness (FIFO tool matching,
retry preserves request semantics, display/request separation, cache-hit
session refresh, multi-tab message.received), guided-minimalism welcome
(time-aware greeting + brand lockup + 4 quick actions + collapsible
library, fill-first affordance), SwarmDashboard rebuild with honest
indeterminate progress, five-locale copy de-jargoning with lazy locale
chunks, accessibility Level-A fixes (color-blind metric glyphs, aria-live
streaming, skip link, focus-visible affordances), robustness (markdown
link/table/KaTeX overflow, safe localStorage, portal modal), and '/' now
opens the product with marketing moved to /about.
This commit is contained in:
Haozhe Wu committed 2026-07-29 23:07:35 +08:00
1 parent c8741e34bf
commit 71933ecf31
80 files changed
+4259 -1245

No files matched your search

+3
View File
@@ -21,6 +21,9 @@ export default {
},
fontFamily: {
sans: ["Inter", "system-ui", "sans-serif"],
// Display serif for the hero greeting only — system stack, no webfont.
// Deliberately NOT used for answers/tables (numeric content stays sans/mono).
serif: ["Georgia", "Songti SC", "Noto Serif SC", "serif"],
mono: ["JetBrains Mono", "ui-monospace", "monospace"],
},
borderRadius: { lg: "var(--radius)", md: "calc(var(--radius) - 2px)", sm: "calc(var(--radius) - 4px)" },