Install any skill in seconds. Free to start, no credit card required.
Get Started Free →**WORKFLOW SKILL** — Execute end-to-end ContosoUniversity migration benchmark: clear output folder, run L1 script + L2 Copilot transforms, build, run Playwright acceptance tests, and generate a numbered run report. WHEN: "run contoso migration test", "test contoso university migration", "contoso migration benchmark", "run CU migration". INVOKES: migration-toolkit (scripts + skills), dotnet CLI, Playwright tests.
.claude/skills/fritzandfriends-contoso-migration-test/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -22% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 46% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 1% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 43% | 0% |
End-to-end migration benchmark that converts the ContosoUniversity Web Forms sample to Blazor Server and validates with 40 Playwright acceptance tests.
| Item | Path | |------|------| | Web Forms source | samples/ContosoUniversity/ContosoUniversity/ | | Blazor output | samples/AfterContosoUniversity/ | | L1 script | migration-toolkit/scripts/bwfc-migrate.ps1 | | Migration skills | migration-toolkit/skills/ (4 skills) | | Acceptance tests | src/ContosoUniversity.AcceptanceTests/ | | Run reports | dev-docs/migration-tests/contosouniversity/ |
ContosoUniversity database (attach samples/ContosoUniversity/ContosoUniversity.mdf if needed)pwsh bin/Debug/net10.0/playwright.ps1 install from test project after first build)runNN folders in dev-docs/migration-tests/contosouniversity/ and use the next sequential numbersamples/AfterContosoUniversity/ but keep the directory itselfExpected duration: < 2 seconds
powershell .\migration-toolkit\scripts\bwfc-migrate.ps1 -Path samples\ContosoUniversity\ContosoUniversity -Output samples\AfterContosoUniversity -Verbose
.razor files created, no .aspx files in outputExpected duration: 20–30 minutes
Load and apply the migration toolkit from migration-toolkit/:
migration-toolkit/README.md for the overall approach and key principlesmigration-toolkit/skills/ — the toolkit contains all the skills needed for the repair phase; apply whichever skills are relevant to the errors and patterns encountered in the generated outputKey transforms to execute:
Page_Load → OnInitializedAsync)SelectMethod as SelectHandler<ItemType> delegates (NOT Items=)DbContext with SQL Server LocalDB connectionProgram.cs with DI registration for all BLL servicesSite.Master → MainLayout.razorIDbContextFactory)dotnet build samples\AfterContosoUniversity\powershell $env:ASPNETCORE_URLS = "http://localhost:44380" dotnet run --project samples\AfterContosoUniversity\
http://localhost:44380powershell $env:CONTOSO_BASE_URL = "http://localhost:44380" dotnet test src\ContosoUniversity.AcceptanceTests\ --verbosity normal
dev-docs/migration-tests/contosouniversity/runNN/REPORT.md using REPORT-TEMPLATE.md| Rule | Detail | |------|--------| | Database | SQL Server LocalDB — never SQLite | | Connection | Server=(localdb)\mssqllocaldb;Database=ContosoUniversity | | SelectMethod | Preserve as SelectHandler<ItemType> delegate — never convert to Items= | | L1→L2 handoff | No manual fixes between layers — L2 starts from raw L1 output | | Report every run | Even failed/partial runs get a report documenting what went wrong | | ItemType | Use ItemType (not TItem) for all data-bound component type parameters |
Other measured skills in the registry, with their headline benchmark lift.