You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Promote the lane back to blocking after two consecutive current-main runs have zero failed Helix work items and zero failed test results in both published R2R runs, with no newly unclassified failures.
The restored lane remains visible in the default pipeline. While it is non-blocking, failures must still be inspected from Helix work-item status and both Azure DevOps test runs; the submission job result alone is not sufficient.
Final PR validation
The restored default runtime pipeline was validated on #133463 at commit 040c3069cc76d3261b7fedd7e1598757ae8f6f19 in Azure DevOps build 1588519:
The R2R_CG2 browser wasm checked job completed succeededWithIssues, as intended for a non-blocking lane.
Helix job 870b56d5-d077-41e1-9e9f-22ff41e50ddb completed with 0 failed work items.
Test run 43844474 published 3813 total, 3328 passed, and 0 failed tests.
A preceding branch census exposed later failures that the fresh-main run's earlier aborts had masked. Those were also narrowed:
The two >1,000-parameter merged assemblies require project-level R2R preflight exclusions because WebAssembly module construction fails before child dispatch.
Later PR-head census
Build 1589007 at 452dea3aba16d97244508b8a0fef4643de8dd26e exposed 13 additional or still-active test-result failures hidden behind completed Helix work items:
Helix reported 14 failed work items. The shared monitor surfaced only 10; JIT.opt, Regression_3, Regression_6, and Regression_PdbOnly_r_3 also failed and had to be found from the Helix job itself. Seven per-test failures were published even though their containing merged-runner work items did not appear in the monitor failure list.
Failed Helix work items
Work item
Exact failing test/signature
Tracking
Exclusion
Directed_do
tailcall/mutual_recursion, SIGSEGV / exit 139 after FifthMethod
Draft is based on the earlier fallback approach; update to preserve shared U/UG/UM stubs with per-target M + I dependencies and the runtime availability guard
Open with NO-MERGE; not treated as landed or ready
Non-blocking and blocking criteria
The default browser-wasm R2R lane is intentionally non-blocking while these active exclusions remain. It should continue to run on the same path triggers as the original lane and publish normal Helix/test-result evidence.
Promote it to blocking only after:
Two consecutive current-main runs report zero failed Helix work items.
Both the default and no_tiered_compilation test runs report zero failed tests, including failures hidden by merged-runner exit behavior.
Every exclusion added for this restoration has either been removed by a product fix or explicitly accepted as a longer-term platform limitation with its own tracker.
The shared Helix monitor can be re-enabled for the lane without turning known or hidden failures into unrelated PR noise.
Note
This tracking update was generated with GitHub Copilot.
Goal
Maintain continuous browser-wasm ReadyToRun runtime-test coverage without blocking unrelated pull requests while known product failures remain.
Current status
R2R_CG2leg was removed by Disable browser WASM R2R test leg #133294.ef1850bdc9e7d142888247d9bb5df3b74a7ae341in Azure DevOps build 1588226.runtimepipeline leg as non-blocking and removes the now-redundant Enable browser WASM R2R tests in manual pipeline #133308 manual-pipeline plumbing.The restored lane remains visible in the default pipeline. While it is non-blocking, failures must still be inspected from Helix work-item status and both Azure DevOps test runs; the submission job result alone is not sufficient.
Final PR validation
The restored default
runtimepipeline was validated on #133463 at commit040c3069cc76d3261b7fedd7e1598757ae8f6f19in Azure DevOps build 1588519:R2R_CG2 browser wasm checkedjob completedsucceededWithIssues, as intended for a non-blocking lane.870b56d5-d077-41e1-9e9f-22ff41e50ddbcompleted with 0 failed work items.43844474published 3813 total, 3328 passed, and 0 failed tests.A preceding branch census exposed later failures that the fresh-main run's earlier aborts had masked. Those were also narrowed:
Methodical_r1/huge_b_r: generic high-rank array signature mismatch, tracked by [wasm][R2R] Generic multidimensional array access traps with null function #133307.Methodical_d1/throwinfilter_dandRegression_6/GitHub_4044: first-passExInfocollision, tracked by [wasm][R2R] b68872 collides with first-pass ExInfo #133468.Later PR-head census
Build 1589007 at
452dea3aba16d97244508b8a0fef4643de8dd26eexposed 13 additional or still-active test-result failures hidden behind completed Helix work items:StructABIinvalidf64.reinterpret_i64operandmore_tailcallsmemory access out of boundsInterpreterTester.TestPInvokeuncaught missing-library failurebadcodeinsidefinally_d/rreturns null fromGetObjRuntime_101046incorrect native small-integer sign extensiongithub60486duplicate stack framesAssemblyOnDisk,ByRefLocals,GenericVirtualMethod,CollectibleStaticsAssembly.Locationtreated as unavailable file-backed setupRegression4Assembly.Locationtreated as unavailable file-backed setupUnrollEqualsStartsWithpreemptive-GCOBJECTREFassertionThese changes are included in #133463 at
67535696f88.The final PR head
67535696f88a709f322896c0b608821659acb30awas validated in build 1589161:coreclr Pri0 Runtime Tests Run R2R_CG2 browser wasm checkedcompleted successfully.43866592reported 3815 total, 3340 passed, 475 not executed, 0 failed, and 0 unanalyzed.Fresh main census
Build 1588226 produced two browser-wasm R2R test runs:
R2R-CG2 browser wasm Checked no_tiered_compilationR2R-CG2 browser wasm CheckedHelix reported 14 failed work items. The shared monitor surfaced only 10;
JIT.opt,Regression_3,Regression_6, andRegression_PdbOnly_r_3also failed and had to be found from the Helix job itself. Seven per-test failures were published even though their containing merged-runner work items did not appear in the monitor failure list.Failed Helix work items
Directed_dotailcall/mutual_recursion, SIGSEGV / exit 139 afterFifthMethodR2RIncompatibleon wasm CoreCLRDirected_ro_Arrayscomplex3,null function or function signature mismatchActiveIssueJIT.optNonVoidThrowHelper,OBJECTREF being accessed while thread is in preemptive GC modeActiveIssueLoaderComplexHierarchyPositive, generic static-interface dispatch signature mismatchActiveIssueMethodical_d1,Methodical_do,Methodical_r1,Methodical_rothrowinfinally_50,RuntimeError: unreachableActiveIssueMethodical_d2,Methodical_r2lcs_gcref, multidimensional-array signature mismatchActiveIssueMethodical_othersR2RIncompatibleon wasm CoreCLR; failure occurs before test dispatchRegression_3DevDiv_902271,GetGCStaticBasememory access out of boundsR2RIncompatibleon wasm CoreCLRRegression_6b68872, first-passExInfocollision atexceptionhandling.cpp:4273R2RIncompatibleon wasm CoreCLRRegression_PdbOnly_r_3R2RIncompatibleon wasm CoreCLR; failure occurs before test dispatchFailed tests hidden from the work-item summary
Runtime_76273AssemblyLoadContext.LoadFromAssemblyPath: path is emptyAssembly.Locationis empty; run the full scenario when files existGitHub_22888Path.Combine:Assembly.Locationproduced a null directoryAssembly.Locationis empty; run the full scenario when files existInterpreterTesterInterpreterTest.TestMdArray, signature mismatchTestMdArraysubtest; all other interpreter tests remain activeRuntime_101046R2RIncompatibleon wasm CoreCLRbestfit,bestfit_1,bestfit-finalizeRuntimeError: unreachableafter reaching steady stateR2RIncompatibleon wasm CoreCLRRevalidated non-failures
b125091passed in the freshRegression_1work item and remains unsuppressed. Assert failure: Popping a frame out of order in browser-wasm ReadyToRun runtime tests #133221 is retained as historical investigation context, not a current lane failure.pinnedlocalremains unsuppressed. The freshJIT.optwork item terminated atNonVoidThrowHelperbefore providing freshpinnedlocalevidence; recent main evidence showed it passing, so [wasm] R2R OSR pinnedlocal hits fFrameWasUnwound and cycles while dumping frames #133286 is not used for a suppression.Vector3Interopremains as fixed on main: forward P/Invoke executes, and only reverse P/Invoke is skipped for browser CoreCLR against [browser-wasm] CoreCLR runtime tests blocked on interop gaps after test-specific corerun enablement #131811.Open fixes and infrastructure dependencies
TypeMapAppcompile/load failureInteroppreflight remains narrowly excludedU/UG/UMstubs with per-targetM+Idependencies and the runtime availability guardRuntime_79354portable entry pointNO-MERGE; not treated as landed or readyNon-blocking and blocking criteria
The default browser-wasm R2R lane is intentionally non-blocking while these active exclusions remain. It should continue to run on the same path triggers as the original lane and publish normal Helix/test-result evidence.
Promote it to blocking only after:
no_tiered_compilationtest runs report zero failed tests, including failures hidden by merged-runner exit behavior.Note
This tracking update was generated with GitHub Copilot.