Finish the mobile performance pass

- Cache the model catalog once per user and each conversation's setting
  separately; clear both on logout and after model saves
- Compress hashed assets asynchronously with a byte budget and set Vary
- Memoize message parsing and throttle selection reads
- Debounce draft writes to localStorage
- Keep the composer editor on the page and focused, as before
- Add a bundle budget check and run it in CI
- Show a loading block while sessions load and a workspace avatar in the
  mobile conversation header
This commit is contained in:
2026-10-20 14:37:11 +01:00
parent c1a94fc9a5
commit 4f7e0a6bf0
38 changed files with 1320 additions and 334 deletions
+3
View File
@@ -10,9 +10,12 @@ import Paper from "@moduletrace/twui/elements/Paper";
import Container from "@moduletrace/twui/layout/Container";
import Center from "@moduletrace/twui/layout/Center";
import { SiteData } from "@/src/data/site-data";
import { clearHarnessCache } from "@/src/utils/harness-cache";
export default function LogoutPage() {
useEffect(() => {
clearHarnessCache();
setTimeout(() => {
window.location.pathname = "/auth/login";
}, 1000);