Skip to content

adding scaffolding skill and test#329

Open
sayedihashimi wants to merge 33 commits intodotnet:mainfrom
sayedihashimi:sayedha/scaffold02
Open

adding scaffolding skill and test#329
sayedihashimi wants to merge 33 commits intodotnet:mainfrom
sayedihashimi:sayedha/scaffold02

Conversation

@sayedihashimi
Copy link
Copy Markdown
Member

This should be picked up when a prompt requests to generate content for ASP.NET Core that uses a database. This skill will ensure that best practices are followed when using ASP.NET Core + EF. For example without this skill it's common for copilot to initialize the database in Program.cs instead of using migrations.

This replaces the old PR #133

Skill validator results

dotnet run --project .\eng\skill-validator\src\SkillValidator.csproj -p:RunArguments="" -- --runs 1 --results-dir "C:\temp\skills\validator-output\" --tests-dir "C:\data\mycode\skills\scaffold02\tests\dotnet-data\" "C:\data\mycode\skills\scaffold02\plugins\dotnet-data\skills\"                                                                                 
Using model: claude-opus-4.6, judge-mode: Pairwise                                                                                                                                                                                                                                                                                                                      
Found 1 skill(s)                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                        
Validated 1 plugin(s)                                                                                                                                                                                                                                                                                                                                                   
⚠  Running with 1 run(s). For statistically significant results, use --runs 5 or higher.                                                                                                                                                                                                                                                                                
[scaffold-generate-aspnet] 🔍 Evaluating...                                                                                                                                                                                                                                                                                                                             
[scaffold-generate-aspnet] 📊 scaffold-generate-aspnet: 2,241 BPE tokens [chars/4: 2,510] (detailed ✓), 17 sections, 6 code blocks                                                                                                                                                                                                                                      
[scaffold-generate-aspnet] 🔍 Running overfitting check (parallel)...                                                                                                                                                                                                                                                                                                   
[scaffold-generate-aspnet/Scaffold Razor Pages CRUD with EF Core and SQLite] 📋 Starting scenario                                                                                                                                                                                                                                                                       
[scaffold-generate-aspnet/Scaffold Razor Pages CRUD with EF Core and SQLite] 🔌 Skill activated (skills: scaffold-generate-aspnet; extra tools: skill)                                                                                                                                                                                                                  
[scaffold-generate-aspnet/Scaffold Razor Pages CRUD with EF Core and SQLite] ✓ All 1 run(s) complete                                                                                                                                                                                                                                                                    
[scaffold-generate-aspnet/Scaffold Minimal API endpoints with OpenAPI] 📋 Starting scenario                                                                                                                                                                                                                                                                             
[scaffold-generate-aspnet/Scaffold Minimal API endpoints with OpenAPI] 🔌 Skill activated (skills: scaffold-generate-aspnet; extra tools: skill, read_powershell, stop_powershell)                                                                                                                                                                                      
[scaffold-generate-aspnet/Scaffold Minimal API endpoints with OpenAPI] ✓ All 1 run(s) complete                                                                                                                                                                                                                                                                          
[scaffold-generate-aspnet/Scaffold Blazor CRUD components] 📋 Starting scenario                                                                                                                                                                                                                                                                                         
[scaffold-generate-aspnet/Scaffold Blazor CRUD components] 🔌 Skill activated (skills: scaffold-generate-aspnet; extra tools: skill)                                                                                                                                                                                                                                    
[scaffold-generate-aspnet/Scaffold Blazor CRUD components] ✓ All 1 run(s) complete                                                                                                                                                                                                                                                                                      
[scaffold-generate-aspnet] 🔍 Overfitting: 0.13 (Low)                                                                                                                                                                                                                                                                                                                   
[scaffold-generate-aspnet] ✅ Done (score: 43.5%)                                                                                                                                                                                                                                                                                                                       
                                                                                                                                                                                                                                                                                                                                                                        
═══ Skill Validation Results ═══         

✓ scaffold-generate-aspnet  +43.5%  [+17.2%, +60.0%] significant  (g=+83.3%)                                                                                                                                                                                                                                                                                            
  Improvement score 43.5% meets threshold of 10.0%                                                                                                                                                                                                                                                                                                                      
                                                                                                                                                                                                                                                                                                                                                                        
  🔍 Overfitting: 0.13 (low) ✅                                                                                                                                                                                                                                                                                                                                         
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         EnsureCreated), and it provides rich OpenAPI metadata with WithName, WithDescription, Produces, and ProducesValidationProblem on every endpoint (Response A only uses WithTags on the group). Response B also went further by actually running the app and testing all endpoints with real HTTP requests, verifying correct status codes. Response B also left the original WeatherForecast sample endpoint in place, which is a minor negative (unnecessary code), but overall the quality differences on criteria 3-5 make Response B substantially better.

        tie      (Equal)  Creates a TodoEndpoints class with MapGet, MapPost, MapPut, and MapDelete endpoints for TodoItem
              Both responses create a TodoEndpoints static class with full CRUD operations (MapGet all, MapGet by id, MapPost, MapPut, MapDelete) for TodoItem. Both compile and work correctly. Response A places it in Endpoints/TodoEndpoints.cs, Response B places it at the root TodoEndpoints.cs. Both use MapGroup for route grouping. Response B verified endpoints actually work with HTTP calls, but the resulting class quality is comparable.
        tie      (Equal)  Creates a TodoDbContext with a DbSet for TodoItem
              Both responses create an identical Data/TodoDbContext.cs with a constructor accepting DbContextOptions<TodoDbContext> and a DbSet<TodoItem> TodoItems property using Set<TodoItem>(). The implementations are functionally equivalent.
        skill    (MuchBetter)  Generates a .http file with sample requests for all CRUD endpoints
              Response B created a TodoItem.http file with sample requests for all 5 CRUD endpoints (GET all, POST, GET by id, PUT, DELETE) with proper host address configuration and content types. Response A did NOT generate any .http file at all. This is a clear miss by Response A.
        skill    (MuchBetter)  Uses EF Core migrations instead of seeding the database in Program.cs
              Response A uses `db.Database.EnsureCreated()` directly in Program.cs, which is explicitly NOT using EF Core migrations — it's the anti-pattern the rubric is asking to avoid. Response B includes the Microsoft.EntityFrameworkCore.Design package (required for migrations), ran `dotnet ef migrations add InitialCreate` and `dotnet ef database update` during development, and does NOT have EnsureCreated in Program.cs. While Response B cleaned up the migration files after testing, the code is properly set up to support migrations (Design package present, no EnsureCreated call).
        skill    (MuchBetter)  Enables OpenAPI support with rich endpoint metadata such as WithName, WithTags, WithDescription, or Produces annotations
              Response A only uses .WithTags('Todos') on the route group — no WithName, WithDescription, or Produces annotations on any endpoint. Response B enriches EVERY endpoint with .WithName(), .WithDescription(), .Produces<>() with specific status codes, and .ProducesValidationProblem() where appropriate, plus .WithTags() on the group. Response B's OpenAPI metadata is substantially richer and more complete.

    ↑ Scaffold Blazor CRUD components  +53.2%
      Tokens               +100.0%    157869 → 506132
      Tool calls           +92.0%     25 → 48
      Task completion      +100.0%    ✗ → ✓
      Time                 +100.0%    99.5s → 204.6s
      Quality (rubric)     +45.0%     4.0/5 → 5.0/5
      Quality (overall)    +100.0%    3.0/5 → 5.0/5
      Errors               0.0%       0 → 0

      Skill activated: scaffold-generate-aspnet; extra tools: skill

      Overall: 3.0 → 5.0 (+2.0)

      ─── Baseline Judge 3.0/5 ───
      The agent produced clean, well-structured Blazor CRUD components that follow best practices for component design, form handling, and entity relationships. The code builds successfully, and the approach was efficient (25 tool calls, no errors, ~100 seconds). However, the agent completely missed the requirement to use EF Core migrations, instead using Database.EnsureCreated() which is explicitly what the rubric advises against. This is a significant miss on a specific rubric criterion. The other three criteria were met excellently, but the migrations omission brings the overall score down.

        5/5  Generates Blazor components (.razor) for the Employee model with Create, Read, Update, Delete functionality
              The agent created all five necessary Razor components: Index.razor (list/read), Create.razor (create with form validation and department dropdown), Edit.razor (update with form validation), Details.razor (read-only detail view), and Delete.razor (delete confirmation page). All components follow proper Blazor patterns including @page directives with route parameters, EditForm with DataAnnotationsValidator and ValidationSummary, IDbContextFactory injection, InteractiveServer render mode, loading states, and proper navigation. The NavMenu was also updated with an Employees link.
        5/5  Creates an AppDbContext with DbSet properties for Employee
              AppDbContext.cs was correctly created in the Data/ folder with the proper namespace (BlazorApp.Data), a constructor accepting DbContextOptions<AppDbContext>, and DbSet properties for both Employee and Department. It was properly registered in Program.cs using AddDbContextFactory with SQLite configuration, and a connection string was added to appsettings.json. The EF Core SQLite and Tools packages were added to the .csproj file.
        1/5  Uses EF Core migrations instead of seeding the database in Program.cs
              The agent explicitly uses `dbContext.Database.EnsureCreated()` in Program.cs (lines 17-21) instead of EF Core migrations. No migrations folder was created, and no `dotnet ef migrations add` command was ever run. EnsureCreated() bypasses the migration system entirely - it creates tables directly without tracking schema changes. The rubric specifically requires EF Core migrations, which would involve creating an initial migration and using `Database.Migrate()` or the CLI tooling.
        5/5  Handles related entities referenced by foreign keys in the Employee model
              The Employee model has a DepartmentId foreign key and Department navigation property, and the agent handled this relationship comprehensively: AppDbContext includes DbSet<Department>; Index.razor uses .Include(e => e.Department) and displays department names; Create.razor and Edit.razor both load departments and render an InputSelect dropdown for department selection; Details.razor and Delete.razor both include the Department and display its name. The relationship is properly handled across all CRUD operations.

      ─── With-Skill Judge 5.0/5 ───
      The agent delivered a complete, well-structured, and working Blazor CRUD scaffolding solution. It methodically explored the existing project, understood the model relationships, created all necessary files (DbContext, 10 Razor components, migrations), updated configuration files (Program.cs, appsettings.json, NavMenu.razor, csproj), and verified everything builds and migrations apply cleanly. The agent recovered from a build error (missing using statement in DepartmentPages/Create.razor) and handled NuGet version issues. Going beyond the minimum requirements, it also created Department CRUD pages and added navigation links. The code follows established Blazor conventions (IDbContextFactory pattern, EditForm with validation, proper routing). The solution is production-quality scaffolding.

        5/5 (was 5/5)  Generates Blazor components (.razor) for the Employee model with Create, Read, Update, Delete functionality
              The agent created all five standard CRUD components in Components/Pages/EmployeePages/: Index.razor (list/read), Create.razor (create with form), Edit.razor (update with form), Delete.razor (delete with confirmation), and Details.razor (read single). All use proper Blazor patterns including @page directives with route parameters, @rendermode InteractiveServer, IDbContextFactory injection, EditForm with DataAnnotationsValidator, ValidationSummary, SupplyParameterFromForm, and NavigationManager for redirects. The components are well-structured with loading states and proper Bootstrap styling.
        5/5 (was 5/5)  Creates an AppDbContext with DbSet properties for Employee
              The agent created Data/AppDbContext.cs with a properly typed DbSet<Employee> and DbSet<Department>. The DbContext has the correct constructor accepting DbContextOptions<AppDbContext>. It was registered in Program.cs using AddDbContextFactory<AppDbContext> with UseSqlite, and the connection string was added to appsettings.json. The necessary NuGet packages (Microsoft.EntityFrameworkCore.Sqlite and .Tools) were added to the csproj.
        5/5 (was 1/5)  Uses EF Core migrations instead of seeding the database in Program.cs
              The agent installed dotnet-ef as a local tool, ran 'dotnet ef migrations add InitialCreate' which generated proper migration files (InitialCreate.cs, InitialCreate.Designer.cs, AppDbContextModelSnapshot.cs), and then ran 'dotnet ef database update' which applied successfully. Program.cs contains no EnsureCreated() or seed data calls - only the DbContextFactory registration. The migration correctly creates both tables with proper constraints and foreign keys.
        5/5 (was 5/5)  Handles related entities referenced by foreign keys in the Employee model
              The Employee model has a DepartmentId FK and Department navigation property. The agent handled this comprehensively: Index.razor uses .Include(e => e.Department) to display department names; Create.razor and Edit.razor load departments into a dropdown InputSelect for FK selection; Delete.razor and Details.razor use .Include() to show the department name. The agent went further and created full Department CRUD pages so users can actually manage the related entity. The migration properly defines the FK constraint with cascade delete.

      ─── Pairwise Comparison ✓ consistent ───
      Winner: skill (MuchBetter)
      Response B is clearly superior across the rubric. The most critical difference is Criterion 3: the rubric explicitly requires EF Core migrations, and Response A uses EnsureCreated() instead — a direct failure of the requirement. Response B properly scaffolded migrations via dotnet-ef, creating versioned migration files. Additionally, Response B created Department CRUD pages (essential for managing the FK relationship), used more modern Blazor patterns (SupplyParameterFromForm, Enhance), and had a build error that it successfully diagnosed and fixed. Response A produced clean code but fundamentally missed the migrations requirement.

        skill    (SlightlyBetter)  Generates Blazor components (.razor) for the Employee model with Create, Read, Update, Delete functionality
              Both responses create all 5 CRUD components (Index, Create, Edit, Details, Delete) for the Employee model. However, Response B uses more modern Blazor patterns — [SupplyParameterFromForm] and the Enhance attribute on EditForm for SSR/streaming support — whereas Response A uses simpler interactive-only patterns. Both are functional, but B follows more current .NET 8+ best practices. Response B also uses consistent Bootstrap styling with btn-outline-* variants for action buttons.
        tie      (Equal)  Creates an AppDbContext with DbSet properties for Employee
              Both responses create nearly identical AppDbContext classes in Data/AppDbContext.cs with DbSet<Employee> Employees and DbSet<Department> Departments using the expression-bodied Set<T>() pattern. Both register IDbContextFactory<AppDbContext> with SQLite in Program.cs. This criterion is equally satisfied by both.
        skill    (MuchBetter)  Uses EF Core migrations instead of seeding the database in Program.cs
              This is the most significant difference. Response A uses `dbContext.Database.EnsureCreated()` in Program.cs — this is explicitly NOT migrations, it bypasses the migration system entirely. Response A has no Migrations folder. Response B properly ran `dotnet ef migrations add InitialCreate` and `dotnet ef database update`, creating a full Migrations/ directory with the InitialCreate migration file and model snapshot. Response B's Program.cs does NOT contain EnsureCreated(). The rubric explicitly requires EF Core migrations, which Response A fails to deliver.                                                                                                                                                
        skill    (SlightlyBetter)  Handles related entities referenced by foreign keys in the Employee model                                                                                                                                                                                                                                                            
              Both responses handle the Employee→Department FK in the Employee CRUD components: department dropdown in Create/Edit, Include(e => e.Department) for display. However, Response B goes further by creating full Department CRUD pages (Index, Create, Edit, Details, Delete) and a Departments nav link. This is practically essential — without Department management, users cannot create departments to assign to employees, making the FK dropdown useless. Response B's migration also explicitly defines the FK constraint with cascade delete and a proper index on DepartmentId. Response A uses null-safe navigation (Department?.Name) which is slightly more defensive, but B's comprehensive approach is more complete.                                                                                                                                                                                                                                                                                                                                                                       
                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                        
1/1 skills passed validation

Copilot AI review requested due to automatic review settings March 11, 2026 15:19
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new dotnet-data skill (scaffold-generate-aspnet) plus an evaluation suite and fixtures to validate scaffolding best practices for ASP.NET Core + EF Core (notably migrations and FK-dependent CRUD).

Changes:

  • Introduces scaffold-generate-aspnet skill guidance for generating Razor Pages, Blazor components, and Minimal API CRUD (with OpenAPI metadata and migrations guidance).
  • Adds tests/dotnet-data/scaffold-generate-aspnet/eval.yaml scenarios to validate migrations, dependent-entity scaffolding, .http generation, and OpenAPI metadata.
  • Adds three fixture starter projects (Razor Pages, Minimal API, Blazor) used by the eval scenarios.

Reviewed changes

Copilot reviewed 51 out of 53 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
plugins/dotnet-data/skills/scaffold-generate-aspnet/SKILL.md New skill instructions for ASP.NET scaffolding + EF migrations + OpenAPI metadata + .http guidance
tests/dotnet-data/scaffold-generate-aspnet/eval.yaml Adds evaluation scenarios/assertions/rubrics for Razor Pages, Minimal API, and Blazor scaffolding
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/MyApp.csproj Razor Pages fixture project definition
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Program.cs Razor Pages fixture startup pipeline
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/appsettings.json Razor Pages fixture configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/appsettings.Development.json Razor Pages dev configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Properties/launchSettings.json Razor Pages fixture launch profiles
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Models/Product.cs Fixture entity with required FK to Category
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Models/Category.cs Fixture parent entity for FK scenario
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/_ViewStart.cshtml Razor Pages fixture view setup
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/_ViewImports.cshtml Razor Pages fixture imports/namespace
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Index.cshtml Razor Pages fixture home page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Index.cshtml.cs Razor Pages fixture page model
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Privacy.cshtml Razor Pages fixture privacy page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Privacy.cshtml.cs Razor Pages fixture privacy model
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Error.cshtml Razor Pages fixture error page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Error.cshtml.cs Razor Pages fixture error model
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Shared/_Layout.cshtml Razor Pages fixture layout
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Shared/_Layout.cshtml.css Razor Pages fixture layout CSS isolation
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/Pages/Shared/_ValidationScriptsPartial.cshtml Razor Pages fixture validation scripts partial
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/wwwroot/css/site.css Razor Pages fixture global CSS
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/wwwroot/js/site.js Razor Pages fixture JS placeholder
tests/dotnet-data/scaffold-generate-aspnet/fixtures/razor-pages-crud/wwwroot/favicon.ico Razor Pages fixture favicon
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/TodoApi.csproj Minimal API fixture project definition (includes OpenAPI package)
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/Program.cs Minimal API fixture startup and sample endpoint
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/Models/TodoItem.cs Minimal API fixture model to scaffold endpoints for
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/appsettings.json Minimal API fixture configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/appsettings.Development.json Minimal API dev configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/Properties/launchSettings.json Minimal API fixture launch profiles
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/BlazorApp.csproj Blazor fixture project definition
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Program.cs Blazor fixture startup pipeline
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Models/Employee.cs Blazor fixture entity with required FK to Department
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Models/Department.cs Blazor fixture parent entity for FK scenario
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/appsettings.json Blazor fixture configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/appsettings.Development.json Blazor dev configuration
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Properties/launchSettings.json Blazor fixture launch profiles
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/_Imports.razor Blazor fixture component imports
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Routes.razor Blazor fixture routing component
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/App.razor Blazor fixture app host component
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/MainLayout.razor Blazor fixture layout component
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/MainLayout.razor.css Blazor fixture layout CSS isolation
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/NavMenu.razor Blazor fixture nav menu
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/NavMenu.razor.css Blazor fixture nav menu CSS isolation
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/ReconnectModal.razor Blazor fixture reconnect UI
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/ReconnectModal.razor.css Blazor fixture reconnect CSS isolation
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Layout/ReconnectModal.razor.js Blazor fixture reconnect JS
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Pages/Home.razor Blazor fixture home page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Pages/Counter.razor Blazor fixture counter page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Pages/Weather.razor Blazor fixture weather page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Pages/Error.razor Blazor fixture error page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/Components/Pages/NotFound.razor Blazor fixture not-found page
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/wwwroot/app.css Blazor fixture app CSS
tests/dotnet-data/scaffold-generate-aspnet/fixtures/blazor-crud/wwwroot/favicon.png Blazor fixture favicon

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread plugins/dotnet-data/skills/scaffold-generate-aspnet/SKILL.md
…d/Components/Routes.razor

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 11, 2026 17:15
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 53 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread plugins/dotnet-data/skills/scaffold-generate-aspnet/SKILL.md Outdated
sayedihashimi and others added 2 commits March 11, 2026 13:21
…d/Components/Layout/ReconnectModal.razor.css

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 11, 2026 17:22
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 53 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

…d/Components/Layout/ReconnectModal.razor.css

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 11, 2026 17:26
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 53 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread plugins/dotnet-data/skills/scaffold-generate-aspnet/SKILL.md Outdated
…d/Components/Layout/ReconnectModal.razor.css

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 11, 2026 17:31
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 53 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread tests/dotnet-data/scaffold-generate-aspnet/fixtures/minimal-api/Program.cs Outdated
@sayedihashimi
Copy link
Copy Markdown
Member Author

I noticed that there is a lot of validation on fixture files, is that by design? These files are just for testing. It makes it harder to get a PR into a good state.

@timheuer @danmoseley

…i/Program.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 11, 2026 17:38
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 51 out of 53 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

@@ -0,0 +1,155 @@
.components-reconnect-first-attempt-visible,
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where did you pull these .razor, .css files from?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the sample projects were generated by copilot.

Copilot AI review requested due to automatic review settings March 28, 2026 05:20
@danmoseley
Copy link
Copy Markdown
Member

/evaluate

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 52 out of 54 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/dotnet-data/scaffold-generate-aspnet/eval.yaml
@github-actions
Copy link
Copy Markdown
Contributor

Skill Validation Results

Skill Scenario Quality Skills Loaded Overfit Verdict
scaffold-generate-aspnet Scaffold Razor Pages CRUD with EF Core and SQLite 3.0/5 → 4.3/5 ⏰ 🟢 ✅ scaffold-generate-aspnet; tools: skill, read_bash / ✅ scaffold-generate-aspnet; tools: skill, read_bash ✅ 0.15
scaffold-generate-aspnet Scaffold Minimal API endpoints with OpenAPI 2.7/5 → 3.3/5 ⏰ 🟢 ✅ scaffold-generate-aspnet; tools: skill, read_bash, stop_bash / ✅ scaffold-generate-aspnet; tools: skill, read_bash ✅ 0.15
scaffold-generate-aspnet Scaffold Blazor CRUD components 3.0/5 → 4.7/5 ⏰ 🟢 ✅ scaffold-generate-aspnet; tools: skill, read_bash, glob / ✅ scaffold-generate-aspnet; tools: skill, glob, read_bash ✅ 0.15

timeout — run(s) hit the (300s) scenario timeout limit; scoring may be impacted by aborting model execution before it could produce its full output (increase via timeout in eval.yaml)

Model: claude-opus-4.6 | Judge: claude-opus-4.6

🔍 Full results — includes quality and agent details

Copilot AI review requested due to automatic review settings March 30, 2026 17:53
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…d/Components/Pages/Error.razor

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 52 out of 54 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread plugins/dotnet-data/skills/scaffold-generate-aspnet/SKILL.md Outdated
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 30, 2026 19:31
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 52 out of 54 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/dotnet-data/scaffold-generate-aspnet/eval.yaml
Comment thread tests/dotnet-data/scaffold-generate-aspnet/eval.yaml Outdated
Comment thread tests/dotnet-data/scaffold-generate-aspnet/eval.yaml Outdated
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 30, 2026 19:38
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 52 out of 54 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sayedihashimi
Copy link
Copy Markdown
Member Author

/evaluate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants