97: #97
Problem
From Joe's blog post:
CI was next. The workflow the agent generated didn't work out of the box, so I just removed it.
The current winui-packaging skill embeds an example GitHub Actions YAML snippet as inline markdown (lines 67–90). The snippet has at least these problems:
- Hard-codes
./bin/x64/Release/ — actual output path varies by TargetFramework, Configuration, and RID, and is usually bin/x64/Release/<tfm>/win-x64/ or similar after RuntimeIdentifiers is set.
- Doesn't set up the .NET SDK before
dotnet build (relies on whatever ships on the runner).
- Single-platform only — fails on Arm64.
- Never exercised by our own CI, so we have no signal when it drifts.
The result: the agent emits a workflow that looks right and doesn't run. Pattern is the deeper issue — every prose-embedded snippet we tell the agent to copy is unverified.
Proposed fix
- Move the YAML to a real file:
plugins/winui/skills/winui-packaging/references/github-actions/build-and-package.yml.
- Make it a proper matrix workflow (
x64, arm64), with actions/setup-dotnet, correct artifact globs, signing from a repo secret (and a graceful fallback to ephemeral dev cert for non-secret-bearing forks / first-time setup).
- Exercise it against a sample WinUI app inside this repo's CI so any breakage is caught here, not by users.
- Skill body instructs the agent to copy the file in (
Copy-Item from the installed skill path, or gh repo clone of just that path) rather than emit YAML from scratch.
Acceptance criteria
Acknowledgments
Identified by Joe Finney in Building Fluent Icon Finder with the WinUI Copilot skill.
97: #97
Problem
From Joe's blog post:
The current
winui-packagingskill embeds an example GitHub Actions YAML snippet as inline markdown (lines 67–90). The snippet has at least these problems:./bin/x64/Release/— actual output path varies byTargetFramework,Configuration, and RID, and is usuallybin/x64/Release/<tfm>/win-x64/or similar afterRuntimeIdentifiersis set.dotnet build(relies on whatever ships on the runner).The result: the agent emits a workflow that looks right and doesn't run. Pattern is the deeper issue — every prose-embedded snippet we tell the agent to copy is unverified.
Proposed fix
plugins/winui/skills/winui-packaging/references/github-actions/build-and-package.yml.x64,arm64), withactions/setup-dotnet, correct artifact globs, signing from a repo secret (and a graceful fallback to ephemeral dev cert for non-secret-bearing forks / first-time setup).Copy-Itemfrom the installed skill path, orgh repo cloneof just that path) rather than emit YAML from scratch.Acceptance criteria
references/github-actions/.x64andarm64produce uploaded.msixartifacts on each run.SKILL.mdis removed (or reduced to a 5-line "what it does" excerpt with a pointer to the real file).Acknowledgments
Identified by Joe Finney in Building Fluent Icon Finder with the WinUI Copilot skill.