PRs that are old and have not been updated recently—likely abandoned or superseded. Consider closing with a polite note; authors can always reopen.
Each PR has three scores on a 0–10 scale:
| Points | Signal |
|---|---|
| 3.0 | No merge conflicts |
| 2.5 | CI passing 1 |
| 2.5 | Has approval 1 |
| 2.5 | Feedback addressed 1 |
| 2.5 | Discussion healthy 1 |
| 2.0–3.0 | Small, easy to review (2.0) / trivial ≤2 files, ≤20 lines (3.0) 1 |
| 1.5 | Has maintainer review 1 |
| 1.0 | Recently active 1 |
| 0.5–1.0 | Team or known author (1.0) / community (0.5) 1 |
| 0.7 | Recently updated 1 |
| 0.5 | Well labeled 1 |
| 0.3 | Good review momentum 1 |
| Points | Signal |
|---|---|
| 1.5 | No approval yet |
| 1.5 | CI blocking merge (otherwise merge-ready) |
| 1.0 | Community author |
| 1.0 | Reviewed, not approved |
| 1.0 | Has unresolved feedback |
| 1.0 | High interest |
| 0.5 | Large change (>200 lines) |
| 0.5 | Trivial change (≤2 files, ≤20 lines, no unresolved threads) |
| 0.5 | Old but active (>30d) |
| −1.5 | Author silent >14d (ball in their court) |
| −0.5 | Author slow 7–14d (ball in their court) |
(ready + 1) × (need + 1)
normalized to 0–10
PRs that are both high-need and near-ready rank highest.
🎯 = action ≥ 5
⚡ = action 4–5
1 Weight from 980-PR statistical analysis. Click any column header to re-sort. Click [?] on any score to see the breakdown.
| Ready | Need | Action | PR | Title | Next Action | CI | Disc | Age | Upd | Size | Author | Area |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5.4 | 1.1 | 1.1 | #91664 | [mono][metadata] Fixes for static virtual methods with interface variance | 🔄 @BrzVlad🔍: merge main (stale 623d) |
⚠️ 0/0/0 | 0/0t 4ppl | 930d | 623d | 77 | @BrzVlad🔍 |
VM-meta-mono |
| 4.9 | 2.2 | 1.6 | #105415 | remove some test exclusions. | @vsadov🔍: review needed |
⚠️ 0/0/0 | 0/0t 3ppl | 608d | 608d | 6 | @mangod9🔍 |
System.Threading |
| 3.6 | 2.8 | 1.4 | #89204 | Enable use-after-return checking in ASAN | @jkoritzinsky🔍: respond to 1 thread(s) from @am11🔍 |
⚠️ 0/0/0 | 1/1t 3ppl | 979d | 567d | 215 | @jkoritzinsky🔍 |
Infrastructure |
| 3.6 | 3.3 | 1.6 | #93902 | Keep using RO metadata after creating IMetaDataImporter for PDB reading | @hoyosjs🔍: respond to 5 thread(s) from @jkotas🔍, @AaronRobinsonMSFT🔍 |
⚠️ 0/0/0 | 5/13t 4ppl | 883d | 565d | 150 | @hoyosjs🔍 |
Diagnostics-coreclr |
| 4.9 | 3.3 | 2.1 | #109649 | Set TargetsLinuxGlibc to false on Android | @agocke🔍, @jkotas🔍: review needed |
⚠️ 0/0/0 | 0/0t 4ppl | 501d | 501d | 🐁 2 | @akoeplinger🔍 |
Infrastructure |
| 4.8 | 0 | 0.5 | #102190 | [wasm][workloads] Check downlevel runtime versions | 🔄 @maraf🔍: merge main (stale 470d) |
⚠️ 0/0/0 | 0/1t 3ppl | 679d | 470d | 102 | @maraf🔍 |
Workloads |
| 5 | 1.7 | 1.3 | #110721 | Expression.Compile: empty the evaluation stack before evaluating second expression in OrElse and AndAlso | @333fred🔍: review needed |
⚠️ 0/0/0 | 0/0t 1ppl | 464d | 462d | 152 | @cston🔍 |
System.Linq.Expressions |
| 4 | 2.2 | 1.3 | #111438 | Add parameters for performance runs | @akoeplinger🔍, @LoopedBard3🔍: review needed |
⚠️ 0/0/0 | 0/0t 2ppl | 434d | 434d | 943 | @DrewScoggins🔍 |
Infrastructure-coreclr |
| 5.6 | 2.8 | 2.1 | #112022 | Include datas in GCSettingsEvent | @agocke🔍: review needed |
✅6 82/6/0 | 0/0t 4ppl | 418d | 418d | 26 | @cshung🔍 |
GC-coreclr |
| 4.1 | 0.6 | 0.7 | #111819 | Adding padding to precode | @mikelle-rogers🔍: respond to 1 thread(s) from @jkotas🔍 |
❌ 72/8/0 | 1/1t 4ppl | 424d | 415d | 23 | @mikelle-rogers🔍 |
VM-coreclr |
| 4.6 | 2.2 | 1.5 | #99130 | Optimize casts from constant byrefs | @MichalPetryka🔍: respond to 1 thread(s) from @EgorBo🔍 |
⚠️ 0/0/0 | 1/1t 3ppl | 754d | 361d | 8 | @MichalPetryka🔍 |
CodeGen-coreclr |
| 3.9 | 1.7 | 1.1 | #114017 | Rename rapidjson helper functions | @jeffschwMSFT🔍: review needed |
❌ 137/5/1 | 0/0t 3ppl | 361d | 359d | 34 | @GrabYourPitchforks🔍 |
Host |
| 2.5 | 3.9 | 1.4 | #107961 | Add DNMD into src/native | @jkoritzinsky🔍: respond to 2 thread(s) from @am11🔍 |
⚠️ 0/0/0 | 🔥 2/4t 6ppl | 553d | 316d | 29603 | @jkoritzinsky🔍 |
Infrastructure |
| 3.4 | 0.6 | 0.6 | #110677 | Update Stepping through GenericPInvokeCalli Stub under the Debugger | @mikelle-rogers🔍: respond to 4 thread(s) from @tommcdon🔍, @noahfalk🔍 |
⚠️ 0/0/0 | 🔥 4/4t 6ppl | 467d | 299d | 138 | @mikelle-rogers🔍 |
Diagnostics-coreclr |
| 3.6 | 2.2 | 1.2 | #114466 | [android] Add -keepnativesymbols to Windows build | @steveisok🔍: respond to 1 thread(s) |
❌ 79/54/0 | 1/2t 3ppl | 349d | 297d | 36 | @steveisok🔍 |
Build-mono |
| 6.1 | 3.3 | 2.5 | #116164 | Make sure binder gets enumerated | @max-charlamb🔍, @lateralusX🔍: review needed |
✅ 88/0/0 | 0/1t 3ppl | 298d | 297d | 🐁 1 | @hoyosjs🔍 |
Diagnostics-coreclr |
| 4.1 | 3.3 | 1.8 | #116298 | [mono][interp] Link try bblock with leave targets from catch block | @BrzVlad🔍: respond to 1 thread(s) from @kotlarmilos🔍 |
❌ 58/5/0 | 1/2t 5ppl | 293d | 292d | 53 | @BrzVlad🔍 |
Codegen-Interpreter-mono |
| 3.6 | 1.1 | 0.8 | #97326 | [Mono]: Add support for callee saved XMM registers on Windows x64. | @lateralusX🔍: respond to 2 thread(s) from @vargaz🔍, @VSadov🔍 |
⚠️ 0/0/0 | 🔥 2/2t 7ppl | 792d | 263d | 260 | @lateralusX🔍 |
VM-meta-mono |
| 4.2 | 0.6 | 0.7 | #116651 | JIT: enable stack allocation of more arrays in R2R | @AndyAyersMS🔍: respond to 3 thread(s) from 🔍, @jkotas🔍 |
❌ 111/2/0 | 3/3t 5ppl | 284d | 253d | 130 | @AndyAyersMS🔍 |
CodeGen-coreclr |
| 5.2 | 2.2 | 1.6 | #116808 | Delete VersionsWithType check from embedClassHandle | @davidwrighton🔍: review needed |
❌ 113/18/1 | 0/0t 3ppl | 279d | 249d | 🐁 3 | @jkotas🔍 |
crossgen2-coreclr |
| 4.8 | 0.6 | 0.8 | #103058 | Use LTO for linux as well | @kunalspathak🔍: respond to 3 thread(s) from @a74nh🔍, @jkoritzinsky🔍 |
✅ 1/0/0 | 🔥 3/4t 9ppl | 658d | 237d | 24 | @kunalspathak🔍 |
Infrastructure-coreclr |
| 3.6 | 1.1 | 0.8 | #117223 | Simplify System.Threading.Volatile implementation | @jkotas🔍: respond to 1 thread(s) from @tannergooding🔍 |
❌ 127/22/0 | 🔥 1/9t 7ppl | 266d | 231d | 247 | @jkotas🔍 |
System.Runtime |
| 5.5 | 3.3 | 2.3 | #116419 | Improve deserialization of JSON primitives into JsonElement | 🔄 @PranavSenthilnathan🔍: merge main (stale 228d) |
✅1 71/1/0 | 0/4t 3ppl | 289d | 228d | 224 | @PranavSenthilnathan🔍 |
System.Text.Json |
| 4.1 | 3.3 | 1.8 | #118510 | Remove workaround in tests for clearing EnableUnsafeBinaryFormatterSerialization | @elinor-fung🔍: respond to 1 thread(s) |
❌ 73/4/0 | 1/2t 4ppl | 229d | 228d | 21 | @elinor-fung🔍 |
System.Runtime |
| 3.8 | 1.1 | 0.8 | #118075 | Add Compliance tests for GB18030-2022 | @jozkee🔍: respond to 2 thread(s) from @tarekgh🔍 |
❌ 63/11/0 | 2/13t 4ppl | 242d | 224d | 1279 | @jozkee🔍 |
Meta |
| 5.4 | 0 | 0.5 | #113212 | [wasm] Don't log errors for unsupported cases in PInvokeCollector | 🛑 @akoeplinger🔍: fix CI failures |
❌ 16/4/0 | 0/0t 3ppl | 383d | 224d | 112 | @akoeplinger🔍 |
Build-mono |
| 5 | 1.7 | 1.3 | #118571 | System.Runtime.Serialization.Xml: throw SerializationException on malformed prefix | @StephenMolloy🔍: review needed |
❌ 58/16/0 | 0/0t 0ppl | 225d | 222d | 35 | @imcarolwang🔍 |
Serialization |
| 5.4 | 2.2 | 1.7 | #118797 | Tweaks to warning formatting | @MichalStrehovsky🔍: respond to 1 thread(s) from 🔍 |
✅7 101/7/0 | 1/2t 3ppl | 221d | 221d | 11 | @MichalStrehovsky🔍 |
NativeAOT-coreclr |
| 5 | 3.3 | 2.1 | #109222 | Factor LibraryImports in `System.Transactions.Local` to Common\ | @SamMonoRT🔍: review needed |
✅ 81/0/0 | 0/0t 2ppl | 515d | 216d | 565 | C @deeprobin🔍 |
System.Transactions |
| 4.9 | 1.1 | 1 | #108513 | [Android] Put Java JNI function in a separate static library | 🔄 @grendello🔍: merge main (stale 214d) |
✅3 143/3/0 | 🔥 0/7t 6ppl | 537d | 214d | 74 | @grendello🔍 |
System.Security |
| 5.8 | 3.3 | 2.4 | #119078 | [cDAC] Allow testing without fallback | @steveisok🔍, @jkoritzinsky🔍: review needed |
✅2 146/2/0 | 0/1t 2ppl | 211d | 210d | 432 | @max-charlamb🔍 |
Diagnostics-coreclr |
| 3.9 | 3.3 | 1.7 | #117502 | Limit expansion in `TemplateConstructableTypes` | @agocke🔍, @jkotas🔍: review needed |
❌ 123/3/1 | 0/0t 4ppl | 257d | 209d | 427 | @MichalStrehovsky🔍 |
NativeAOT-coreclr |
| 6.6 | 1.1 | 1.3 | #118736 | JIT: More precise side effect propagation in loop hoisting | 🔄 @amanasifkhalid🔍: merge main (stale 202d) |
✅3 99/3/0 | 0/2t 5ppl | 222d | 202d | 39 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 7.1 | 0.6 | 1.1 | #119464 | [nativeaot] Don't overwrite `$(LinkNativeDependsOn)` property | 🔄 @grendello🔍: merge main (stale 196d) |
✅2 87/2/0 | 0/0t 3ppl | 197d | 196d | 🐁 2 | @grendello🔍 |
NativeAOT-coreclr |
| 6.8 | 3.3 | 2.8 | #118043 | Make R2R single method mode compatible with composite mode | @agocke🔍: review needed |
✅3 89/3/0 | 0/1t 2ppl | 243d | 182d | 20 | @kg🔍 |
crossgen2-coreclr |
| 4.8 | 2.8 | 1.8 | #118616 | Explicitly asserting CodeExporter beliefs about specific types of DataContracts | @mconnew🔍: review needed |
❌ 71/5/0 | 0/1t 3ppl | 225d | 179d | 32 | @StephenMolloy🔍 |
Serialization |
| 3.4 | 3.9 | 1.8 | #114028 | Annotate System.ServiceModel.Syndication for trimming and AOT | C @reflectronic🔍: respond to 1 thread(s) |
❌ 75/8/1 | 1/2t 3ppl | 361d | 179d | 253 | C @reflectronic🔍 |
System.ServiceModel.Syndication |
| 4.9 | 2.8 | 1.9 | #119674 | Remove redundant pinning over static fields/RVA | @EgorBo🔍: respond to 4 thread(s) from @jkotas🔍 |
✅ 94/0/0 | 4/4t 3ppl | 193d | 175d | 359 | @EgorBo🔍 |
CodeGen-coreclr |
| 4.9 | 3.3 | 2.1 | #108493 | JIT: Use edge weights in `LinearScan::findPredBlockForLiveIn` | @JulieLeeMSFT🔍, @AndyAyersMS🔍: review needed |
⚠️ 0/0/0 | 0/0t 4ppl | 538d | 173d | 10 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 3.2 | 3.3 | 1.5 | #112151 | JIT: Make `BB_UNITY_WEIGHT` 1.0 | @amanasifkhalid🔍: respond to 3 thread(s) from 🔍 |
❌ 95/8/0 | 3/3t 5ppl | 413d | 173d | 110 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 5 | 1.7 | 1.3 | #105625 | JIT: Remove fallthrough restrictions in `Compiler::fgOptimizeBranch` | @JulieLeeMSFT🔍, @AndyAyersMS🔍: review needed |
⚠️ 0/0/0 | 0/0t 2ppl | 603d | 173d | 50 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 5.6 | 3.9 | 2.7 | #107419 | JIT: Try to maintain fallthrough in `Compiler::fgSplitEdge` | @JulieLeeMSFT🔍, @AndyAyersMS🔍: review needed |
✅2 109/2/0 | 0/2t 4ppl | 565d | 173d | 41 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 4.1 | 2.2 | 1.3 | #111005 | JIT: Add TSPLIB dump capabilities to block layout | @amanasifkhalid🔍: respond to 2 thread(s) from @AndyAyersMS🔍 |
⚠️ 0/0/0 | 2/2t 3ppl | 449d | 173d | 143 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 5.4 | 3.3 | 2.3 | #120934 | JIT: Fix unnecessary GC transitions recorded for tailcalls | @jakobbotsch🔍: respond to 1 thread(s) |
✅ 126/0/0 | 1/1t 4ppl | 154d | 152d | 15 | @jakobbotsch🔍 via |
CodeGen-coreclr |
| 5.5 | 1.1 | 1.1 | #120519 | Allow ExternalTypeMap to have duplicates entries with identical mapping but different trimTarget | 🔄 @jtschuster🔍: merge main (stale 151d) |
✅4 141/4/0 | 0/7t 5ppl | 168d | 151d | 150 | @jtschuster🔍 |
System.Runtime.InteropServices |
| 4.1 | 3.3 | 1.8 | #120337 | Define platform testing policy | @agocke🔍: respond to 6 thread(s) from @jkotas🔍, @ericstj🔍 |
⏳ 4/0/2 | 🔥 6/11t 6ppl | 173d | 147d | 56 | @agocke🔍 |
Meta |
| 6.5 | 0.6 | 1 | #107108 | Make sure we can build with DYNAMIC_HEAP_COUNT not defined | 🛑 @cshung🔍: fix CI failures |
❌ 84/2/0 | 0/0t 1ppl | 573d | 143d | 9 | @cshung🔍 |
GC-coreclr |
| 6.5 | 0.6 | 1 | #103358 | JIT: Add stress mode for skipping lowering conditional nodes to use CPU flags | @amanasifkhalid🔍: respond to 1 thread(s) from @jakobbotsch🔍 |
✅2 104/2/1 | 1/1t 5ppl | 650d | 123d | 7 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 5 | 1.7 | 1.3 | #107585 | JIT: Simplify block insertion when cloning finally regions | @JulieLeeMSFT🔍: review needed |
❌ 14/66/0 | 0/0t 1ppl | 561d | 123d | 122 | @amanasifkhalid🔍 |
CodeGen-coreclr |
| 6.5 | 3.3 | 2.7 | #122030 | [WASI] Stop generation of Node.js execution script due to lack of preview2 support | @maraf🔍, @akoeplinger🔍: review needed |
✅2 22/2/0 | 0/0t 0ppl | 116d | 116d | 🐁 3 | C @yamachu🔍 |
Build-mono |
| 6.8 | 2.2 | 2.1 | #117952 | Enable some HotReload tests for FieldRVA. | @tommcdon🔍: review needed |
✅3 76/3/0 | 0/0t 2ppl | 245d | 108d | 14 | @AaronRobinsonMSFT🔍 |
Diagnostics-coreclr |
| 5 | 3.3 | 2.1 | #117473 | Box value types implementing `IXmlSerializable` in `XmlSerializer` generated IL | @StephenMolloy🔍: review needed |
✅ 79/0/0 | 0/0t 2ppl | 258d | 104d | 2661 | C @daeghanelkin🔍 |
Serialization |
| 6.5 | 0.6 | 1 | #122424 | Make System.Double/Single.ConvertToInteger intrinsic | @janvorli🔍: respond to 1 thread(s) from @tannergooding🔍 |
✅2 91/2/0 | 1/1t 4ppl | 104d | 103d | 6 | @janvorli🔍 |
CodeGen-Interpreter-coreclr |
| 4.9 | 3.9 | 2.4 | #118874 | [EventPipe] Add EventPipeBuffer corruption diagnostics | @mdh1418🔍: respond to 2 thread(s) from @noahfalk🔍 |
✅3 136/3/0 | 2/11t 5ppl | 218d | 97d | 450 | @mdh1418🔍 |
Tracing-coreclr |
| 4.4 | 3.3 | 1.9 | #99136 | missing opportunities in constant folding around bitwise ops | C @pedrobsaila🔍: respond to 7 thread(s) from @amanasifkhalid🔍 |
✅ 122/0/0 | 7/7t 3ppl | 754d | 84d | 541 | C @pedrobsaila🔍 |
CodeGen-coreclr |
| 5 | 1.7 | 1.3 | #119419 | Remove base DAM mismatch warning on types | 🔄 @sbomer🔍: merge main (stale 74d) |
✅ 115/0/0 | 0/9t 4ppl | 200d | 74d | 463 | @sbomer🔍 |
Tools-ILLink |
| 4.2 | 3.9 | 2.1 | #118257 | Fix DataContractJsonSerializer not passing ISerializationSurrogateProvider to internal serializer | @stephentoub🔍: review needed |
❌ 70/4/1 | 0/4t 4ppl | 236d | 60d | 73 | @StephenMolloy🔍 via |
Serialization |
| 3.6 | 3.9 | 1.9 | #121956 | AOT publish passes with long paths on Windows | @maraf🔍, @akoeplinger🔍: review needed |
❌ 102/31/0 | 🔥 0/6t 6ppl | 119d | 55d | 193 | @ilonatommy🔍 |
Build-mono |
| 3.8 | 2.2 | 1.3 | #116166 | Fix building the sanitizer instrumentation and hooking it into the hosts | 🛑 C @39otsu🔍: fix CI failures |
❌ 152/5/0 | 🔥 0/4t 6ppl | 298d | 54d | 119 | C @39otsu🔍 |
Infrastructure |
| 6.5 | 3.3 | 2.7 | #122349 | Enable ARM (32-bit) deb/rpm package generation | @NikolaMilosavljevic🔍: review needed |
✅ 71/0/0 | 0/0t 0ppl | 105d | 52d | 🐁 4 | C @csa7mdm🔍 |
Infrastructure-installer |
| 6 | 0 | 0.6 | #119776 | Release debugger thread tracker on the win32 event thread | @tommcdon🔍: respond to 1 thread(s) from @hoyosjs🔍 |
✅ 88/0/0 | 1/1t 3ppl | 189d | 47d | 40 | @tommcdon🔍 |
Diagnostics-coreclr |
| 6.3 | 0 | 0.6 | #121892 | Add runtime-coreclr gcstress-extra pipeline to build analysis | @agocke🔍: respond to 1 thread(s) from 🔍 |
❌ 140/4/0 | 1/1t 1ppl | 123d | 47d | 🐁 4 | @agocke🔍 via |
|
| 2.9 | 5 | 1.9 | #121883 | Haiku: Process/thread management functions | C @trungnt2910🔍: respond to 2 thread(s) from 🔍, @huoyaoyuan🔍 |
❌ 80/3/0 | 2/5t 5ppl | 123d | 37d | 904 | C @trungnt2910🔍 |
System.Diagnostics.Process |
| 4.6 | 3.3 | 2 | #121935 | Fix inconsistente process start time | C @Neo-vortex🔍: respond to 1 thread(s) from 🔍 |
❌ 106/4/0 | 1/1t 2ppl | 120d | 36d | 🐁 2 | C @Neo-vortex🔍 |
System.Diagnostics.Process |
| 3.6 | 3.3 | 1.6 | #114983 | Use SDK ILLink analyzer for OOBs for downlevel TFMs | @sbomer🔍: respond to 1 thread(s) from @ericstj🔍 |
❌ 31/92/0 | 1/9t 4ppl | 335d | 35d | 97 | @sbomer🔍 |
Infrastructure-libraries |
| 4.2 | 3.3 | 1.8 | #120769 | Support EVP_MAC for HMAC | @bartonjs🔍: review needed |
❌ 89/5/0 | 0/2t 3ppl | 160d | 32d | 382 | @vcsjones🔍 |
System.Security |
| 3.7 | 5 | 2.3 | #115294 | Add APIs to `BlobBuilder` for customizing the underlying byte array et al. | C @teo-tsirpanis🔍: respond to 4 thread(s) from @AaronRobinsonMSFT🔍, 🔍 |
✅2 79/2/0 | 🔥 4/18t 8ppl | 324d | 22d | 1152 | C @teo-tsirpanis🔍 |
System.Reflection.Metadata |
| 4.3 | 3.3 | 1.9 | #104575 | Add the new Lock type to Concurrent Dicionary | @eduardo-vp🔍: respond to 1 thread(s) from @stephentoub🔍 |
⚠️ 0/0/0 | 1/3t 4ppl | 624d | 19d | 68 | @eduardo-vp🔍 |
System.Collections |
| 4 | 3.3 | 1.8 | #119430 | [API Proposal]: SequenceReader<T>.TryAdvanceTo(ReadOnlySpan<T> delimiter) | C @pedrobsaila🔍: respond to 1 thread(s) |
❌ 76/5/0 | 1/4t 3ppl | 199d | 16d | 123 | C @pedrobsaila🔍 |
System.Memory |
| 3.6 | 2.2 | 1.2 | #117584 | System.Reflection.CustomAttributeFormatException thrown on a retrieval of derived attribute with overridden property getter | C @pedrobsaila🔍: respond to 1 thread(s) from @MichalStrehovsky🔍 |
❌ 151/6/1 | 1/10t 4ppl | 254d | 15d | 207 | C @pedrobsaila🔍 |
System.Reflection |