feat: Extends performance domain with React Compiler error triage - #145
Draft
MajorLift wants to merge 1 commit into
Draft
feat: Extends performance domain with React Compiler error triage#145MajorLift wants to merge 1 commit into
performance domain with React Compiler error triage#145MajorLift wants to merge 1 commit into
Conversation
`mm-react-compiler-error-triage` — sorting compiler errors into `Todo` and unsupported versus actionable, ratcheting `panicThreshold`, and the `useMemo`/`useCallback` exception for effect dependencies, whose output the compiler's memoization does not preserve. Split out of MetaMask#43: compiler adoption is a different subject from the render antipattern scans, and nothing in either scan cites it.
MajorLift
added a commit
to MajorLift/metamask-skills
that referenced
this pull request
Sep 1, 2026
Compiler adoption is a different subject from the render antipattern scans, and neither scan cites it. The three inbound links go with it, so nothing here points at a file this branch no longer carries. Also removes five `MetaMask-planning` epic and audit-ticket ids from four files. They are a private repo's numbers and this repo is public; none of them is on `main`, so this branch introduced all five. Provenance now reads "the extension performance audit". The public `metamask-extension` PR references are kept.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
React Compiler adoption fails in a way the compiler itself reports badly. It emits a large undifferentiated error list, most of which is
Todoand unsupported-syntax noise the author cannot act on, and a minority that is a real bug in the component. Without a way to sort the two, the usual outcome is that the whole list is treated as noise and the compiler stays off.There is a second failure with no error attached at all. The compiler's memoization does not preserve the identity a
useEffectdependency needs, so removing auseMemothe compiler appears to make redundant can silently change effect firing, in this component or in a consumer.Overview
Adds
mm-react-compiler-error-triageto the mobileperformanceskill, and the effect-dependency exception tomm-react-compiler.Todo/ unsupported versus actionable.panicThresholdrather than setting it once.useMemooruseCallbackwhose output is auseEffectdependency.The render-antipattern scans are in #43. Neither of them cites this material. Compiler adoption is a different question from whether a selector returns a fresh reference.
Showcase
No trial run yet. Nothing here speaks to how the triage performs against a real error list.