用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tomevault-io/skills-registry --skill jit-regression-test命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | jit-regression-test |
| description | > Use when this capability is needed. |
🚨 Do NOT create a test when: the issue has no reproducible code and you cannot compose a minimal repro, the issue is a duplicate of an existing test under
JitBlue/, or the bug is in libraries/runtime rather than the JIT compiler itself.
Extract a JIT regression test case from a GitHub issue into a properly structured test under src/tests/JIT/Regression/JitBlue/.
From the GitHub issue, extract:
Runtime_99391)DOTNET_* vars needed to reproduceCreate a new folder under src/tests/JIT/Regression/JitBlue/:
src/tests/JIT/Regression/JitBlue/Runtime_<issue_number>/
Create a Runtime_<issue_number>.cs file following these conventions:
Example:
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
using System;
using System.Runtime.CompilerServices;
using Xunit;
public class Runtime_<issue_number>
{
[Fact]
public static void TestEntryPoint()
{
// Test code that exercises the bug
// Use Assert.Equal, Assert.True, etc. for validation
}
}
Runtime_<issue_number>)[Fact] attribute, named TestEntryPoint()[MethodImpl(MethodImplOptions.NoInlining)] when preventing inlining is needed to reproduce// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
namespace Runtime_99391;
using System;
using System.Runtime.CompilerServices;
using System.Numerics;
using Xunit;
public class Runtime_99391
{
[Fact]
public static void TestEntryPoint()
{
Vector2 result2a = Vector2.Normalize(Value2);
Assert.Equal(new Vector2(0, 1), result2a);
}
private static Vector2 Value2
{
[MethodImpl(MethodImplOptions.NoInlining)]
get => new Vector2(0, 2);
}
}
A custom .csproj file is only required when:
DOTNET_JitStressModeNames)Otherwise, register the test file in the existing src/tests/JIT/Regression/Regression_*.csproj (Regression_ro_2.csproj is a good default) file and skip creating a new .csproj.
If a custom .csproj file is needed, it should be located next to the test source file with the following name: Runtime_<issue_number>.csproj. Example:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Optimize>True</Optimize>
<DebugType>None</DebugType>
<!-- Needed for CLRTestEnvironmentVariable -->
<RequiresProcessIsolation>true</RequiresProcessIsolation>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(MSBuildProjectName).cs" />
<CLRTestEnvironmentVariable Include="DOTNET_TieredCompilation" Value="0" />
</ItemGroup>
</Project>
.cs file in Regression_ro_2.csproj instead.src/tests/JIT/Regression/JitBlue/Runtime_* when in doubt about current conventions.Converted and distributed by TomeVault — claim your Tome and manage your conversions.