mirror of
https://github.com/Heretek-AI/AetherTable.git
synced 2026-11-12 15:59:32 -10:00
Perf: - Route-level code splitting (React.lazy + Suspense): entry chunk 1.9 MB → 241 kB, 30 on-demand view/modal chunks, Vite chunk-size warning gone Features: - DiceHistoryPanel: session audit log of every engine-resolved roll with crit/fumble highlighting, 50-entry cap, localStorage persistence - ShortcutsModal + global keys: `?` cheat-sheet, Escape closes top-most modal, typing guard; "Keyboard Shortcuts" entry in Cmd+K palette - Real WebAudio ambience engine (startAmbience/stopAmbience/setAmbienceVolume): jukebox presets synthesize per-track noise+drone loops; play state is now honest (opens paused) and master slider is live Bug fixes: - pyproject: declare reportlab (6 test modules failed collection on fresh envs) - Navbar clipped X-CARD at 1366×768: responsive collapse, 0 overflow 900→1920px - Canvas tool rail clipped under character dock: flex-wrap + max-width - Macro quickbar occluded ~80% of chat console: collapsed by default - Alarm-fatigue sounds removed from pagination/mic-toggle/seat-pick A11y: - Global :focus-visible rings, prefers-reduced-motion, .selectable-text - aria-labels on icon-only controls; all modal close buttons labeled + autoFocus so focus enters dialogs on open; unlabeled form fields fixed (0 remaining) SEO: meta description, <main> landmark, robots.txt, spec-compliant llms.txt Verified: cargo ✅, pytest 57/1 ✅, MCR 100% / HCI 1.0 ✅, build ~1s ✅, Lighthouse 100/100/100, Chrome DevTools sweeps 900→1920px with 0 visible overflows. Details in docs/improvement-log.md. Co-Authored-By: Claude <[email protected]>