Skip to content

feat: add Purview.OpenAPI.XmlComments - #1

Merged
kieronlanning merged 2 commits into
mainfrom
feat/initial-package
Nov 3, 2026
Merged

kieronlanning merged 2 commits into
mainfrom
feat/initial-package

Conversation

@kieronlanning

Copy link
Copy Markdown
Contributor

Adds Purview.OpenAPI.XmlComments, an MSBuild development-dependency package that works around the Microsoft.AspNetCore.OpenApi XML-comment generator's duplicate-key crash (dotnet/aspnetcore#67192) without removing the generator.

  • Before compile: removes every occurrence of each documentation ID duplicated across the referenced XML documentation in AdditionalFiles (after the generator's ~ReturnType normalisation), plus any PurviewOpenAPIXmlCommentExclude IDs, and swaps filtered copies in.
  • After compile: POAX001 warns about an ID documented in both the project and one reference, naming the exclude to add.
  • The purview-openapi-xmlcomments-duplicates agent skill, with find-duplicate-documentation-ids.ps1 (-Json, exit codes 0/1/2).
  • Docs: package README, root README, AGENTS.md, CHANGELOG, docs/wiki (including Troubleshooting and Agent Skills).

Validated locally: dotnet purview-build with pack validation (2/2 packages valid), 78 test runs (unit on net10.0/net11.0, integration, skill conformance), and the packed-consumer gate.

Merging to main runs release.yml, which publishes 1.0.0-prerelease.1 to nuget.org through Trusted Publishing, so that needs setting up for this repository first.

An MSBuild development-dependency package that removes colliding documentation IDs from the
referenced XML documentation the Microsoft.AspNetCore.OpenApi XML-comment generator reads
(dotnet/aspnetcore#67192), warns with POAX001 about project/reference overlaps, and ships the
purview-openapi-xmlcomments-duplicates agent skill with its diagnostic script.
@kieronlanning
kieronlanning merged commit 2934a32 into main Nov 3, 2026
2 checks passed
@kieronlanning
kieronlanning deleted the feat/initial-package branch November 3, 2026 13: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