Make shell execution explicit for URI-guarded launches

Proprietary

Opt-in desktop shell policy for a direct Process.Start(string) statement that is the sole positive branch statement of bound Uri.IsWellFormedUriString(value, UriKind.Absolute), optionally the final operand of a conjunction. Require the same bound identifier read; preserve all validation and launch reads, guard evaluation and failures. Adopt shell association for all schemes, without claiming mutable property stability or changing URI validation. Leave other branches/overloads/conditions, explicit settings and shared unsupported contexts unchanged. Separate from version upgrades; validate the desktop handler/environment.

OpenRewrite.Recipes.CSharp.Migration.Dotnet.Net3_0.UseShellExecuteForUriGuardedLaunches
mod run . --recipe=OpenRewrite.Recipes.CSharp.Migration.Dotnet.Net3_0.UseShellExecuteForUriGuardedLaunches

Install it once, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.