Skip to content

Fix pack - #31

Merged
kieronlanning merged 10 commits into
mainfrom
fix-pack
Oct 15, 2026
Merged

kieronlanning merged 10 commits into
mainfrom
fix-pack

Conversation

@kieronlanning

Copy link
Copy Markdown
Contributor

No description provided.

The shared workflows installed whatever dotnet-version said and left global.json
to fend for itself. Those two can disagree, and when they do the job cannot
recover: every dotnet command resolves against global.json, so the first one -
`dotnet tool install Purview.Build` - fails with "A compatible .NET SDK was not
found" and takes the run with it. A consuming repository had to state its SDK
three times (global.json, pr.yml, release.yml) and keep the copies in step by
hand, with nothing checking that it had.

Both workflows now read sdk.version from global.json and install exactly that.
The dotnet-version input still applies when global.json pins nothing, so every
repository that does not pin keeps the behaviour it has today.

Verified against all eight consuming repositories: zodsharp, value-objects and
results resolve their pinned 11.0.100-rc.1.26425.128, and build-sdk,
sourcegenerator-framework, telemetry-sourcegenerator, aspirec4 and
aspire-resourcekit fall back to the 10.0.x input unchanged.

Consumers can drop their explicit dotnet-version once this is on main; until
then it is simply redundant rather than wrong, because an explicit value that
matches global.json installs the same SDK.
Purview.BuildSdk 1.0.6 removes skill packaging and the build-time .agents/
mirror, so the skills CLI cloning the git repository is the only delivery
route. Skills are authored at skills/<name>/SKILL.md and nothing packs them.

- rename every skill to a purview-<product>-* prefix; skills install into one
  flat directory per agent, so an unprefixed name collides with somebody
  else's and the loser is whichever installed second
- validate them on every test run with Purview.Skills.Testing 1.0.6, through a
  Repository.UnitTests project whose [InheritsTests] attribute is load-bearing
- raise the TUnit floor to 1.75.0, which Purview.Skills.Testing depends on and
  central transitive pinning would otherwise pin back down
- bump to 0.5.4
A tracked solution-level setting, so format-on-save matches the lint check the
pipeline runs rather than being set per developer.
ci: make global.json the single source of truth for the SDK version
@kieronlanning
kieronlanning merged commit 17275ab into main Oct 15, 2026
1 check passed
@kieronlanning
kieronlanning deleted the fix-pack branch October 15, 2026 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant