Skip to content

Skip non-scope ancestors quickly in NameResolver.Resolve - #65017

Open
Jake Bailey (jakebailey) wants to merge 1 commit into
microsoft:mainfrom
jakebailey:perf/name-resolver-loop
Open

Jake Bailey (jakebailey) wants to merge 1 commit into
microsoft:mainfrom
jakebailey:perf/name-resolver-loop

Conversation

@jakebailey

@jakebailey Jake Bailey (jakebailey) commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Resolve walks every ancestor of the reference location, and for each one it fetches locals, evaluates getIsDeferredContext, runs a large switch on the kind, and checks isSelfReferenceLocation. Most ancestors (expressions, statements, type nodes, and so on) are not scopes, so all of that work does nothing for them.

Classify node kinds up front: kinds that the loop body never acts on are climbed past directly, and simple block-like scopes (blocks, loops, case blocks, catch clauses, mapped types) only need a plain lookup in their locals. Everything else, including any locals container not explicitly listed, still runs the full loop body, so resolution results are unchanged. A const name keeps using the full path since every ancestor must be checked for a const assertion.

Thanks Steven (@teamchong) for finding this!

Resolve walks every ancestor of the reference location, and for each
one it fetches locals, evaluates getIsDeferredContext, runs a large
switch on the kind, and checks isSelfReferenceLocation. Most ancestors
(expressions, statements, type nodes, and so on) are not scopes, so
all of that work does nothing for them.

Classify node kinds up front: kinds that the loop body never acts on
are climbed past directly, and simple block-like scopes (blocks, loops,
case blocks, catch clauses, mapped types) only need a plain lookup in
their locals. Everything else, including any locals container not
explicitly listed, still runs the full loop body, so resolution results
are unchanged. A `const` name keeps using the full path since every
ancestor must be checked for a const assertion.

Co-authored-by: Steven Chong <25894545+teamchong@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings October 29, 2026 19:56
@github-project-automation github-project-automation Bot moved this to Not started in PR Backlog Oct 29, 2026
@typescript-automation typescript-automation Bot added the For Uncommitted Bug PR for untriaged, rejected, closed or missing bug label Oct 29, 2026
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) perf test this faster

@typescript-automation

typescript-automation Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
perf test this faster ✅ Started 👀 Results

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The ancestor-traversal optimization has no active review issues blocking approval.

No open issues 🎉

What changed in this PR

This PR optimizes ancestor traversal in the native compiler’s name resolver by skipping work for nodes that do not affect name resolution.

Changes:

  • Classifies node kinds into skip, locals-only lookup, or full-resolution paths.
  • Preserves full traversal for const names and special-case scopes.
  • Adds a kind-based helper for identifying locals containers.
File Description
tsc/​internal/​binder/​nameresolver.go Adds node-kind classification and fast paths for ancestor traversal.
tsc/​internal/​ast/​ast.go Adds IsLocalsContainerKind to support scope classification.

Review effort: Balanced

@jakebailey Jake Bailey (jakebailey) added the Domain: Performance Reports of unusually slow behavior label Oct 29, 2026
@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=20
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=20
Types 79,607 79,607 ~ ~ ~ p=1.000 n=20
Memory Used 104,136k (± 0.03%) 104,127k (± 0.03%) ~ 104,034k 104,253k p=0.482 n=20
Memory Allocs 1,263,758 (± 0.01%) 1,263,788 (± 0.01%) ~ 1,263,543 1,264,122 p=0.794 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.023s (± 3.52%) 0.023s (± 2.59%) ~ 0.021s 0.025s p=0.918 n=20
Bind Time 0.009s (± 5.21%) 0.009s (± 6.10%) ~ 0.007s 0.011s p=0.916 n=20
Check Time 0.216s (± 0.74%) 0.214s (± 0.70%) ~ 0.207s 0.220s p=0.144 n=20
Emit Time 0.140s (± 0.80%) 0.140s (± 1.15%) ~ 0.130s 0.146s p=0.772 n=20
Total Time 0.391s (± 0.66%) 0.389s (± 0.39%) ~ 0.384s 0.396s p=0.355 n=20
angular-1 - native
Errors 3 3 ~ ~ ~ p=1.000 n=20
Symbols 586,484 (± 0.01%) 586,566 (± 0.01%) ~ 586,222 586,926 p=0.107 n=20
Types 241,688 (± 0.00%) 241,688 (± 0.00%) ~ 241,683 241,695 p=0.854 n=20
Memory Used 517,888k (± 0.02%) 517,924k (± 0.01%) ~ 517,711k 518,341k p=0.560 n=20
Memory Allocs 7,800,015 (± 0.10%) 7,791,956 (± 0.04%) ~ 7,784,890 7,809,290 p=0.060 n=20
Config Time 0.008s (± 2.73%) 0.008s (± 2.79%) ~ 0.008s 0.009s p=1.000 n=20
Parse Time 0.133s (± 4.89%) 0.126s (± 2.23%) ~ 0.115s 0.138s p=0.097 n=20
Bind Time 0.044s (± 9.61%) 0.048s (±10.06%) ~ 0.039s 0.068s p=0.115 n=20
Check Time 0s 0s ~ ~ ~ p=1.000 n=20
Emit Time 0.869s (± 1.47%) 0.860s (± 1.26%) ~ 0.822s 0.893s p=0.516 n=20
Total Time 1.066s (± 1.78%) 1.055s (± 1.40%) ~ 1.009s 1.104s p=0.507 n=20
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 685,920 685,920 ~ ~ ~ p=1.000 n=20
Types 939,467 939,467 ~ ~ ~ p=1.000 n=20
Memory Used 497,284k (± 0.01%) 497,259k (± 0.01%) ~ 497,062k 497,508k p=0.358 n=20
Memory Allocs 12,107,452 (± 0.01%) 12,108,695 (± 0.01%) ~ 12,103,698 12,118,414 p=0.174 n=20
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=20
Parse Time 0.041s (± 2.65%) 0.041s (± 3.46%) ~ 0.036s 0.048s p=0.761 n=20
Bind Time 0.012s (± 7.70%) 0.013s (± 9.99%) ~ 0.011s 0.019s p=0.147 n=20
Check Time 0.962s (± 0.58%) 0.962s (± 0.58%) ~ 0.937s 0.985s p=1.000 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.045s (± 0.47%) 1.046s (± 0.44%) ~ 1.023s 1.066s p=0.654 n=20
class-transformer - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 45,376 45,376 ~ ~ ~ p=1.000 n=20
Types 7,573 7,573 ~ ~ ~ p=1.000 n=20
Memory Used 27,841k (± 0.02%) 27,837k (± 0.02%) ~ 27,818k 27,850k p=0.273 n=20
Memory Allocs 248,693 (± 0.06%) 248,722 (± 0.06%) ~ 248,123 249,244 p=0.602 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.012s (± 3.12%) 0.012s (± 4.26%) ~ 0.010s 0.016s p=0.116 n=20
Bind Time 0.004s (±12.97%) 0.003s (± 9.17%) ~ 0.002s 0.005s p=0.098 n=20
Check Time 0.008s (± 5.03%) 0.008s (± 5.87%) ~ 0.006s 0.009s p=0.929 n=20
Emit Time 0.008s (± 6.34%) 0.009s (±11.26%) ~ 0.007s 0.016s p=0.749 n=20
Total Time 0.033s (± 2.84%) 0.033s (± 3.43%) ~ 0.029s 0.039s p=0.738 n=20
effect - native
Errors 12 12 ~ ~ ~ p=1.000 n=20
Symbols 1,235,115 1,235,115 ~ ~ ~ p=1.000 n=20
Types 894,113 894,113 ~ ~ ~ p=1.000 n=20
Memory Used 940,649k (± 0.02%) 940,392k (± 0.02%) ~ 939,958k 941,222k p=0.052 n=20
Memory Allocs 12,670,742 (± 0.02%) 12,669,941 (± 0.03%) ~ 12,661,667 12,703,019 p=0.086 n=20
Config Time 0.002s 0.002s (± 5.09%) ~ 0.002s 0.003s p=1.000 n=20
Parse Time 0.152s (± 1.57%) 0.150s (± 1.88%) ~ 0.140s 0.161s p=0.393 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.991s (± 1.26%) 0.989s (± 0.92%) ~ 0.960s 1.021s p=0.984 n=20
Emit Time 0.530s (± 2.54%) 0.526s (± 2.23%) ~ 0.481s 0.557s p=0.723 n=20
Total Time 1.777s (± 0.92%) 1.766s (± 0.91%) ~ 1.699s 1.840s p=0.199 n=20
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=20
Symbols 3,784,019 3,784,019 ~ ~ ~ p=1.000 n=20
Types 1,355,974 1,355,974 ~ ~ ~ p=1.000 n=20
Memory Used 1,836,703k (± 0.07%) 1,837,016k (± 0.08%) ~ 1,830,543k 1,841,369k p=0.620 n=20
Memory Allocs 25,985,950 (± 0.11%) 25,996,784 (± 0.14%) ~ 25,885,651 26,172,247 p=0.779 n=20
Config Time 0.009s 0.009s ~ ~ ~ p=1.000 n=20
Parse Time 0.303s (± 2.04%) 0.302s (± 2.12%) ~ 0.277s 0.335s p=0.952 n=20
Bind Time 0.001s 0.001s ~ ~ ~ p=1.000 n=20
Check Time 3.192s (± 0.51%) 3.180s (± 0.50%) ~ 3.129s 3.243s p=0.304 n=20
Emit Time 0.254s (± 1.24%) 0.255s (± 1.02%) ~ 0.245s 0.263s p=0.899 n=20
Total Time 4.263s (± 0.39%) 4.248s (± 0.41%) ~ 4.180s 4.319s p=0.292 n=20
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=20
Symbols 4,793,245 4,793,245 ~ ~ ~ p=1.000 n=20
Types 2,607,045 2,607,045 ~ ~ ~ p=1.000 n=20
Memory Used 2,881,974k (± 0.03%) 2,880,550k (± 0.02%) -1,424k (- 0.05%) 2,878,005k 2,883,253k p=0.024 n=20
Memory Allocs 75,545,345 (± 0.62%) 75,345,991 (± 0.17%) ~ 75,019,885 75,997,895 p=0.799 n=20
Config Time 0.026s (± 0.55%) 0.026s (± 0.87%) ~ 0.025s 0.027s p=0.062 n=20
Parse Time 0.495s (± 4.32%) 0.493s (± 4.35%) ~ 0.444s 0.625s p=0.878 n=20
Bind Time 0.184s (±12.53%) 0.181s (±11.41%) ~ 0.147s 0.262s p=0.920 n=20
Check Time 7.126s (± 0.68%) 7.117s (± 0.85%) ~ 6.956s 7.512s p=0.461 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 7.884s (± 0.60%) 7.872s (± 0.90%) ~ 7.663s 8.359s p=0.365 n=20
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 1,883,074 1,883,074 ~ ~ ~ p=1.000 n=20
Types 1,158,168 1,158,168 ~ ~ ~ p=1.000 n=20
Memory Used 972,281k (± 0.02%) 972,489k (± 0.01%) ~ 972,047k 973,071k p=0.086 n=20
Memory Allocs 13,560,558 (± 0.11%) 13,558,138 (± 0.11%) ~ 13,517,352 13,618,466 p=0.841 n=20
Config Time 0.008s 0.008s ~ ~ ~ p=1.000 n=20
Parse Time 0.160s (± 1.73%) 0.164s (± 2.29%) ~ 0.148s 0.177s p=0.089 n=20
Bind Time 0.044s (± 7.40%) 0.046s (±11.44%) ~ 0.038s 0.078s p=0.494 n=20
Check Time 1.516s (± 0.68%) 1.514s (± 0.74%) ~ 1.455s 1.555s p=0.857 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.745s (± 0.65%) 1.749s (± 0.63%) ~ 1.705s 1.792s p=0.560 n=20
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 1,184,972 1,184,972 ~ ~ ~ p=1.000 n=20
Types 438,963 438,963 ~ ~ ~ p=1.000 n=20
Memory Used 1,165,620k (± 0.35%) 1,164,190k (± 0.21%) ~ 1,150,588k 1,171,482k p=0.862 n=20
Memory Allocs 47,667,286 (± 0.10%) 47,687,194 (± 0.11%) ~ 47,458,542 47,884,059 p=0.478 n=20
Config Time 0.002s (± 7.95%) 0.002s (±12.90%) 🟩-0.000s (-20.93%) 0.001s 0.002s p=0.004 n=20
Parse Time 0.141s (± 1.79%) 0.139s (± 1.28%) ~ 0.131s 0.143s p=0.217 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.807s (± 0.37%) 0.801s (± 0.43%) -0.006s (- 0.79%) 0.787s 0.816s p=0.005 n=20
Emit Time 0.140s (± 1.45%) 0.140s (± 1.16%) ~ 0.134s 0.148s p=0.586 n=20
Total Time 9.370s (± 0.35%) 9.317s (± 0.34%) -0.053s (- 0.57%) 9.236s 9.443s p=0.021 n=20
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 263,511 263,511 ~ ~ ~ p=1.000 n=20
Types 196,116 196,116 ~ ~ ~ p=1.000 n=20
Memory Used 224,609k (± 0.02%) 224,606k (± 0.02%) ~ 224,412k 224,795k p=0.984 n=20
Memory Allocs 2,401,166 (± 0.01%) 2,401,457 (± 0.02%) +291 (+ 0.01%) 2,399,694 2,402,465 p=0.021 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.051s (± 2.27%) 0.050s (± 2.74%) ~ 0.046s 0.056s p=0.502 n=20
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Check Time 0.396s (± 1.10%) 0.388s (± 0.96%) -0.007s (- 1.82%) 0.374s 0.403s p=0.024 n=20
Emit Time 0.047s (± 5.01%) 0.050s (± 5.99%) ~ 0.042s 0.060s p=0.099 n=20
Total Time 0.520s (± 0.85%) 0.516s (± 1.06%) ~ 0.495s 0.536s p=0.250 n=20
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 4,350,661 4,350,661 ~ ~ ~ p=1.000 n=20
Types 3,040,644 3,040,644 ~ ~ ~ p=1.000 n=20
Memory Used 2,433,890k (± 0.03%) 2,433,736k (± 0.02%) ~ 2,431,668k 2,436,496k p=0.799 n=20
Memory Allocs 37,383,968 (± 0.11%) 37,372,662 (± 0.06%) ~ 37,320,161 37,485,763 p=0.968 n=20
Config Time 0.003s 0.003s ~ ~ ~ p=1.000 n=20
Parse Time 0.249s (± 2.39%) 0.251s (± 1.63%) ~ 0.234s 0.264s p=0.481 n=20
Bind Time 0.087s (± 9.58%) 0.093s (±12.10%) ~ 0.076s 0.140s p=0.422 n=20
Check Time 7.150s (± 0.31%) 7.174s (± 0.96%) ~ 7.036s 7.773s p=0.931 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 7.501s (± 0.30%) 7.532s (± 0.90%) ~ 7.388s 8.120s p=0.542 n=20
tanstack-router - native
Errors 1 1 ~ ~ ~ p=1.000 n=20
Symbols 571,756 571,756 ~ ~ ~ p=1.000 n=20
Types 397,689 397,689 ~ ~ ~ p=1.000 n=20
Memory Used 331,418k (± 0.01%) 331,404k (± 0.01%) ~ 331,212k 331,620k p=0.883 n=20
Memory Allocs 4,393,683 (± 0.18%) 4,389,224 (± 0.10%) ~ 4,378,724 4,409,572 p=0.659 n=20
Config Time 0.001s (± 9.93%) 0.001s (± 9.93%) ~ 0.001s 0.002s p=1.000 n=20
Parse Time 0.040s (± 5.46%) 0.041s (± 4.89%) ~ 0.035s 0.050s p=0.662 n=20
Bind Time 0.014s (±11.40%) 0.014s (±10.04%) ~ 0.011s 0.022s p=0.464 n=20
Check Time 0.578s (± 1.01%) 0.577s (± 1.26%) ~ 0.555s 0.615s p=0.693 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.653s (± 0.95%) 0.652s (± 1.37%) ~ 0.627s 0.700s p=0.441 n=20
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=20
Symbols 231,616 231,616 ~ ~ ~ p=1.000 n=20
Types 181,195 181,195 ~ ~ ~ p=1.000 n=20
Memory Used 193,522k (± 0.01%) 193,517k (± 0.01%) ~ 193,458k 193,606k p=0.857 n=20
Memory Allocs 1,318,307 (± 0.03%) 1,318,222 (± 0.02%) ~ 1,317,450 1,319,182 p=0.947 n=20
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Parse Time 0.045s (± 3.69%) 0.045s (± 3.01%) ~ 0.041s 0.051s p=0.282 n=20
Bind Time 0.023s (± 5.85%) 0.023s (± 8.17%) ~ 0.018s 0.034s p=0.430 n=20
Check Time 0.323s (± 1.59%) 0.320s (± 1.81%) ~ 0.296s 0.355s p=0.507 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.398s (± 1.32%) 0.395s (± 1.88%) ~ 0.369s 0.441s p=0.515 n=20
vscode - native
Errors 11 11 ~ ~ ~ p=1.000 n=20
Symbols 7,493,593 7,493,593 ~ ~ ~ p=1.000 n=20
Types 4,404,145 4,404,145 ~ ~ ~ p=1.000 n=20
Memory Used 5,199,219k (± 0.02%) 5,199,925k (± 0.02%) ~ 5,196,214k 5,202,860k p=0.341 n=20
Memory Allocs 56,879,799 (± 0.02%) 56,883,072 (± 0.02%) ~ 56,859,471 56,925,075 p=0.314 n=20
Config Time 0.037s (± 1.13%) 0.037s (± 1.24%) ~ 0.035s 0.038s p=0.819 n=20
Parse Time 0.941s (± 2.04%) 0.940s (± 2.61%) ~ 0.840s 1.104s p=0.962 n=20
Bind Time 0.327s (± 7.56%) 0.328s (± 7.75%) ~ 0.291s 0.547s p=0.941 n=20
Check Time 7.985s (± 0.95%) 7.962s (± 1.20%) ~ 7.486s 8.306s p=0.516 n=20
Emit Time 2.769s (± 4.39%) 2.799s (± 4.12%) ~ 2.577s 3.706s p=0.317 n=20
Total Time 12.117s (± 1.33%) 12.123s (± 1.55%) ~ 11.364s 13.105s p=0.794 n=20
webpack - native
Errors 616 616 ~ ~ ~ p=1.000 n=20
Symbols 917,188 917,188 ~ ~ ~ p=1.000 n=20
Types 636,859 636,859 ~ ~ ~ p=1.000 n=20
Memory Used 693,445k (± 0.01%) 693,523k (± 0.01%) ~ 693,203k 693,844k p=0.090 n=20
Memory Allocs 6,498,194 (± 0.03%) 6,499,327 (± 0.04%) ~ 6,492,927 6,511,924 p=0.718 n=20
Config Time 0.004s 0.004s ~ ~ ~ p=1.000 n=20
Parse Time 0.139s (± 3.21%) 0.142s (± 2.91%) ~ 0.123s 0.157s p=0.155 n=20
Bind Time 0.044s (± 7.69%) 0.045s (± 8.18%) ~ 0.038s 0.067s p=0.866 n=20
Check Time 1.124s (± 0.43%) 1.118s (± 0.44%) ~ 1.098s 1.135s p=0.097 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 1.335s (± 0.47%) 1.334s (± 0.47%) ~ 1.312s 1.372s p=0.654 n=20
xstate-main - native
Errors 0 0 ~ ~ ~ p=1.000 n=20
Symbols 640,490 640,490 ~ ~ ~ p=1.000 n=20
Types 387,984 387,984 ~ ~ ~ p=1.000 n=20
Memory Used 350,895k (± 0.01%) 350,934k (± 0.02%) ~ 350,721k 351,179k p=0.763 n=20
Memory Allocs 3,990,548 (± 0.07%) 3,993,311 (± 0.07%) ~ 3,986,724 4,008,293 p=0.301 n=20
Config Time 0.001s 0.001s (±18.96%) ~ 0.001s 0.003s p=1.000 n=20
Parse Time 0.061s (± 2.58%) 0.069s (±28.59%) ~ 0.055s 0.248s p=0.348 n=20
Bind Time 0.021s (±10.14%) 0.021s (± 9.60%) ~ 0.017s 0.030s p=0.728 n=20
Check Time 0.414s (± 0.79%) 0.432s (± 8.56%) ~ 0.403s 0.767s p=0.867 n=20
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=20
Total Time 0.503s (± 0.86%) 0.528s (±10.73%) ~ 0.483s 1.042s p=0.825 n=20
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • class-transformer - native
  • effect - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • tanstack-router - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 20
Baseline baseline 20

Developer Information:

Download Benchmarks

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed at 2545a54. The classification preserves full handling for special scopes, deferred contexts, and self references, updates lastLocation when skipping ancestors, and retains const-assertion traversal. Targeted compiler baselines covering parameter scope, arguments, computed/static members, decorators, infer constraints, and self references passed. No blocking issue found.

@github-project-automation github-project-automation Bot moved this from Not started to Needs merge in PR Backlog Oct 30, 2026
@jakebailey

Copy link
Copy Markdown
Member Author

This also seems like virtually no difference...

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Author: Team Domain: Performance Reports of unusually slow behavior For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

Status: Needs merge

Development

Successfully merging this pull request may close these issues.

3 participants