- Expédié
- 26 août 2026 à 01:16 UTC
- Auteur
- kamo
- Commite
- 40d24fc
Lot 2 de l'audit de performance du client. Comme pour le lot 1, rien n'est membre peut voir ou faire des changements. Le registre des outils a importé les dix fenêtres d'outils avec impatience, et les fournisseurs d'outils se montent. le registre inconditionnellement à l'intérieur d'AuthedChrome - de sorte que l'arbre de composant de chaque fenêtre assis dans la coquille de racine des 143 routes pour les fenêtres du propre commentaire du dock dit commencer vide. Mesurée avec esbuild contre juste les bibliothèques des vendeurs, cela a attiré: Re-markdown - remarque-gfm - remarque-math - rehype-katex - rehype-high-high-high-high-light (l'IA bull bull) est de 610 KB min / 182 KB gzip, css-arbre et dompurify (le modèle de message éditeur) est 226 KB / 66 KB, et Quill est 205 KB / 60 KB et 1 016 KB minifié / 301 KB gzip du code du fournisseur seul, avec les composants de l'outil eux-mêmes au-dessus. Tout était tout téléchargé, analysé et exécuté pendant l'hydratation sur chaque chargement de page. Deux choses gardent cela invisible. Les champs de 'icon' restent impatients, parce que ToolWindowsContext les lit de manière synchrone pour réinjecter une tête hexagonale de la fenêtre minimisée et vérifie toolPlatform pour la vérité avant de permettre à une fenêtre de s'ouvrir L'icône paresseuse transforme les deux en échecs silencieux, ce qui est la classe exacte de "il n'a pas pop up" bug que ce quai a eu auparavant. Et les morceaux sont réchauffés plutôt que d'attendre: ToolDock précharge tous les dix au ralenti après la première peinture, donc un clic n'attend jamais sur un Fetch, et ToolWindowRestore précharge exactement les outils ses noms d'instantanés avant le rejouer, donc une fenêtre restaurée ne peint jamais de chrome autour d'un corps vide. DateTimeAjouter armé d'un intervalle de 1 Hz par instance sans porte, et a construit son infobulle à huit heures de fuseau horaire - avec un formateur par ligne - dans le corps de rendu l'infobullition était ouverte. Sur/leads qui est plus de 60 fois: 60 temporisateurs, 60 React commet deuxième, et quelques centaines de millisecondes par seconde de travail Intl sur une grille personne n'est toucher. La tique est maintenant fermée sur "isOpen" esthétique - format "relatif", qui est précisément l'endroit où une valeur vivante est rendue: l'en-tête de l'infobulle, l'étiquette tandis que envolé (il se déplace vers un compteur de deuxième résolution), et un affichage relatif qui doit rafraîchissant-toi. Il saute également le commit pendant que l'onglet est caché, et relit le horloge lorsque la porte s'ouvre - sans ce rattrapage, le premier cadre stationnaire montrerait un âge mesuré à partir de la dernière cheque. L'infobulle est une fonction maintenant, donc il n'est construite qu'à l'ouverture. Les trois formats sont mis en cache par fuseau horaire. NavHighlightContext a porté la ideroed et son setter en une valeur, donc tous les le pointeur entrant et sortant re-remissié à chaque consommateur - y compris app/page.tsx, 851 lignes de rampe, qui n'appelle le setter qu'en courant et ne lit jamais l'identifiant. Balayage sur une grille de douze tuiles est de 24 événements, donc c'était 24 ré-rênes complètes de la le lance-pad et tous les widgets en direct dessus. Divisé en deux contextes: le setter est stable par contrat d'État d'utilisation, de sorte que les auteurs ne les remettent jamais à nouveau, et seulement l'option enveloppe qui tirer le point ristand encore à l'identifiant. Délibérément NON inclus: déplacer les deux feuilles de style de ag-g-g-réseau à partir de globals.css. C'est le plus grand gain de blocage de rendu dans l'audit (187 ko dans la tête de chaque route, y compris /validate et /logout), mais il inverse la cascade et le CSS de la grille ag chargement actuellement AVANT le pré-flacon de l'argau et se chargerait ensuite après - et vérifier que rien ne coûte visible nécessite un navigateur sur/leads, /commerce et /sets/member/[id. Je me suis rendu pour quelqu'un qui peut le regarder. Vérifié: tsc -noEmit clean; les 8 scripts de garde passent; 422 tests à travers la navigation, page, outils, chat et suites temporelles passe, et la suite complète est verte à l'exception d'un test appartenant aux travaux d'une autre session en vol.