mirror of
https://github.com/dotnet/skills.git
synced 2026-09-20 09:49:54 +08:00
4975793af0
* Add csharp-development skill and update CODEOWNERS and README.md - Introduced a new skill for C# development guidance. - Updated CODEOWNERS to include reviewers for the new skill. - Modified README.md to list the new csharp-development skill. - Added evaluation scenarios for the csharp-development skill. * Refactor C# evaluation scenarios to enhance production code review and validation guidance * Refactor production code review scenarios to improve clarity and focus on async error handling * Update CODEOWNERS to reflect current ownership and streamline reviewer assignments * Remove csharp-development skill documentation and evaluation tests * Remove csharp-development skill from README * Fix formatting in Constants.g.cs by adding missing semicolon * Revert Constants.g.cs to main * Remove csharp-development skill from CODEOWNERS * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update CODEOWNERS to include additional reviewers for dotnet-ai skills * Move dotnet skills to dotnet-util to keep dotnet plugin focused and targeted. * Add CODEOWNERS, SKILL.md, package-types.md, and publish-workflow.md for NuGet trusted publishing; implement eval.yaml for dotnet-pinvoke and dotnet-util skills * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update README files to enhance plugin descriptions and remove outdated LSP section * Rename repository title from 'dotnet' to 'dotnet-util' in README.md for clarity. * Refine README.md to clarify included .NET skills and remove redundant descriptions * Add 'dotnet-util' plugin for utility skills in .NET development * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add 'dotnet-util' plugin for utility skills in .NET development * Add dotnet-util to Codex marketplace manifest * Align dotnet-util marketplace descriptions * Refactor CODEOWNERS and update README for nuget-trusted-publishing; add evaluation scenarios and workflow template for trusted publishing * Add P/Invoke diagnostics and type mapping references; implement NuGet trusted publishing setup - Created diagnostics.md for common pitfalls and failure modes in P/Invoke. - Added type-mapping.md for native-to-.NET type mappings. - Introduced nuget-trusted-publishing skill for setting up OIDC-based NuGet publishing. - Added package-types.md detailing structural requirements for various NuGet package types. - Created publish-workflow.md as a template for GitHub Actions workflows for NuGet publishing. * Add evaluation YAML files for csharp-scripts, dotnet-pinvoke, and nuget-trusted-publishing skills * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Complete nuget-trusted-publishing move: remove from dotnet, add to dotnet-specialized README * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Remove eval.vally.yaml and eval.yaml files for nuget-trusted-publishing skill * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add NuGet trusted publishing skill and related references - Introduced `nuget-trusted-publishing` skill for setting up OIDC-based trusted publishing on GitHub Actions. - Added detailed documentation in SKILL.md covering prerequisites, process, safety rules, and troubleshooting. - Created `package-types.md` to outline structural requirements for various NuGet package types. - Developed `publish-workflow.md` as a template for GitHub Actions workflows for NuGet publishing. - Removed obsolete `dotnet-specialized` plugin and updated `dotnet` plugin description. - Added evaluation tests for `nuget-trusted-publishing` skill to ensure proper guidance for users. - Implemented evaluation tests for `dotnet-pinvoke` and `csharp-scripts` skills to validate functionality. * Update dotnet plugin description to include high-level .NET development skills * Add NuGet trusted publishing and P/Invoke documentation - Introduced type mapping reference for native-to-.NET types in dotnet-pinvoke. - Added a comprehensive guide for setting up NuGet trusted publishing using OIDC in GitHub Actions. - Created a reference document detailing structural requirements for various NuGet package types. - Provided a template for GitHub Actions workflow for publishing NuGet packages with trusted publishing. - Implemented evaluation scenarios for testing the dotnet-pinvoke and nuget-trusted-publishing skills, including prompts and assertions for expected outputs. * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add CODEOWNERS entries for setup-local-sdk * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update dotnet README to list setup-local-sdk skill * Add setup-local-sdk to skills section in README * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
100 lines
4.1 KiB
YAML
100 lines
4.1 KiB
YAML
scenarios:
|
|
- name: "Avoid activating for language-agnostic calendar script"
|
|
prompt: >
|
|
Write a quick script to experiment with finding the earliest Friday the
|
|
13th starting at 0001-01-01 in the proleptic Gregorian calendar. Also
|
|
count how many Friday the 13ths exist in a full 400-year cycle. Execute it and show results --
|
|
no need for a full project, just a small script for quick prototyping.
|
|
expect_activation: false
|
|
assertions:
|
|
- type: "exit_success"
|
|
- type: "output_contains"
|
|
value: "Friday"
|
|
- type: "output_matches"
|
|
pattern: "(April|4/13|0001-04-13)"
|
|
- type: "output_contains"
|
|
value: "688"
|
|
expect_tools: ["bash"]
|
|
max_turns: 10
|
|
rubric:
|
|
- "The agent correctly finds April 13, 0001 as the earliest Friday the 13th"
|
|
- "The agent correctly counts 688 Friday the 13ths in 400 years"
|
|
- "The agent verified by running code"
|
|
- "The csharp-scripts skill does not activate because the prompt does not ask for C# or .NET"
|
|
timeout: 120
|
|
|
|
- name: "Test a C# language feature with a file-based app"
|
|
prompt: "Does C# support creating a stackalloc'd Span of native-sized integers? Can you test it and see?"
|
|
assertions:
|
|
- type: "exit_success"
|
|
- type: "output_matches"
|
|
pattern: "(nint|nuint|native)"
|
|
- type: "output_contains"
|
|
value: "stackalloc"
|
|
- type: "output_not_matches"
|
|
pattern: "dotnet new console"
|
|
expect_tools: ["bash"]
|
|
rubric:
|
|
- "Runs the test using 'dotnet <file>.cs' (file-based app) rather than creating a full project with 'dotnet new console'"
|
|
- "The code compiles and runs, demonstrating that stackalloc with Span<nint> works"
|
|
timeout: 120
|
|
|
|
- name: "Compose a file-based app from helper files"
|
|
prompt: |
|
|
Create a tiny file-based C# app in the current directory using these exact files:
|
|
hello.cs, Helpers.cs, Models/Person.cs, and Scratch.cs.
|
|
|
|
Requirements:
|
|
- hello.cs is the entry point.
|
|
- hello.cs uses #:include *.cs to include Helpers.cs and #:include Models/*.cs to include Models/Person.cs.
|
|
- hello.cs uses #:exclude Scratch.cs so Scratch.cs is not compiled.
|
|
- Scratch.cs should contain invalid C# with the identifier ThisShouldNotCompile, so the app would fail if Scratch.cs were included.
|
|
- Helpers.cs should contain a helper that transforms a person's name.
|
|
- Models/Person.cs should contain a Person model.
|
|
- Run the app with dotnet hello.cs and make it print exactly: ADA LOVELACE
|
|
assertions:
|
|
- type: "exit_success"
|
|
- type: "file_contains"
|
|
path: "hello.cs"
|
|
value: "#:include"
|
|
- type: "file_contains"
|
|
path: "hello.cs"
|
|
value: "#:exclude"
|
|
- type: "file_contains"
|
|
path: "hello.cs"
|
|
value: "#:include *.cs"
|
|
- type: "file_contains"
|
|
path: "hello.cs"
|
|
value: "#:include Models/*.cs"
|
|
- type: "file_contains"
|
|
path: "hello.cs"
|
|
value: "#:exclude Scratch.cs"
|
|
- type: "file_contains"
|
|
path: "Helpers.cs"
|
|
value: "Formatter"
|
|
- type: "file_contains"
|
|
path: "Models/Person.cs"
|
|
value: "Person"
|
|
- type: "file_contains"
|
|
path: "Scratch.cs"
|
|
value: "ThisShouldNotCompile"
|
|
- type: "file_not_contains"
|
|
path: "hello.cs"
|
|
value: "#:include Scratch.cs"
|
|
- type: "output_not_matches"
|
|
pattern: "dotnet new console"
|
|
- type: "run_command_and_assert"
|
|
command_to_run: "dotnet"
|
|
command_arguments: "hello.cs"
|
|
expected_exit_code: 0
|
|
expected_std_output_contains: "ADA LOVELACE"
|
|
command_timeout: 120
|
|
expect_tools: ["bash"]
|
|
rubric:
|
|
- "Uses a file-based app with an entry-point .cs file rather than creating a project"
|
|
- "Creates hello.cs, Helpers.cs, Models/Person.cs, and Scratch.cs with the requested responsibilities"
|
|
- "Uses #:include to compile helper/model .cs files with the entry point"
|
|
- "Uses #:exclude to keep Scratch.cs out of the build even though *.cs is included"
|
|
- "Runs the app with dotnet <file>.cs and reports the successful output"
|
|
timeout: 120
|