Skip to content

refactor(hidi): remove migrated main tool resources - #3111

Draft
Gavin Barron (gavinbarron) wants to merge 1 commit into
mainfrom
gavinbarron-hidi-main-source-cleanup
Draft

Gavin Barron (gavinbarron) wants to merge 1 commit into
mainfrom
gavinbarron-hidi-main-source-cleanup

Conversation

@gavinbarron

@gavinbarron Gavin Barron (gavinbarron) commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

Pull Request

Description

Remove the main-branch Hidi resources from OpenAPI.NET after the history-preserving migration merged into OpenAPI.NET.OData. Hidi remains discoverable through links to its new repository; the OpenAPI.NET core and YAML reader libraries retain their current code, versions, tests, signing, and release infrastructure.

Draft only: do not merge until both destination Docker and Hidi NuGet ESRP publisher handoffs are ready and authorized. The destination migration has merged, but publisher readiness is a separate gate. This PR does not publish packages or images, change destination publishing flags, or authorize release resources.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Other (please describe): Hidi-only source-repository cleanup following an accepted migration.

Related Issue(s)

  • Accepted main migration: microsoft/OpenAPI.NET.OData#884, merged as 11e882530c3976ac1e563b28e264dcea5724e94f.
  • Accepted source support/v2 cleanup precedent: #3109, merged as c8e64dc3f486b4a2cfbc250e81628b47b9514b35; reviewed head c6717bb88f28bb4bed2ff7ae17313056d7ab9a92 retained the library GitHub release-edit job.

Changes Made

  • Delete the 20 Hidi source files, 19 Hidi test/fixture files, Hidi-only root Dockerfile, and local tool installation script. Remove their solution, build-script, CodeQL, editor, core-test project-reference, and obsolete Hidi friend-assembly entries.
  • Remove only the ADO Hidi package/executable publication, Hidi ESRP deployment, Docker image deployment and its secret-config lifecycle, Docker-only variables and repository artifact copy, obsolete Hidi package exclusion, and executable release assets. Preserve current main's core/YAML ESRP release jobs, idempotent version checks, authenticated feed, both signing tasks, package/symbol artifacts, and create_github_release with action: edit. The remaining deploy jobs are tag-only; the removed Docker job was the only main/nightly deploy consumer.
  • Update README and CONTRIBUTING discovery links to Hidi's main branch in OpenAPI.NET.OData. Preserve the shared signing key, core/YAML version 3.10.2, shared release scripts, security/feed configuration, historical changelog, commit-scope examples, and unrelated documentation. No dependency upgrades or history rewriting.

Testing

  • Unit tests added/updated
  • Integration tests added/updated
  • Manual testing performed
  • All existing tests pass

Validation was performed by the parent migration session against cleanup commit bfc6e487631ffa8bb46d31c8778f96ddbd4c73e5.

  • Pristine main baseline e1a75437b76ebfc7c9eb446e9fd0b59a21afb14b: dotnet test --solution Microsoft.OpenApi.slnx -c Release passed 1970/1970, including 69 Hidi tests.
  • git diff --check passed for this 53-file cleanup.
  • dotnet build Microsoft.OpenApi.slnx -c Release -v quiet passed, 0 warnings and 0 errors.
  • dotnet test --solution Microsoft.OpenApi.slnx -c Release --no-build -v minimal passed 1901/1901, exactly the baseline minus the 69 migrated Hidi tests.
  • dotnet pack src\Microsoft.OpenApi\Microsoft.OpenApi.csproj -c Release --no-build -o C:\Users\gavinbarron\.copilot\session-state\c631d217-9378-4cee-8c7e-761043ff3ae5\files\source-main-cleanup-packages --include-symbols --include-source /p:SymbolPackageFormat=snupkg -v quiet passed.
  • dotnet pack src\Microsoft.OpenApi.YamlReader\Microsoft.OpenApi.YamlReader.csproj -c Release --no-build -o C:\Users\gavinbarron\.copilot\session-state\c631d217-9378-4cee-8c7e-761043ff3ae5\files\source-main-cleanup-packages --include-symbols --include-source /p:SymbolPackageFormat=snupkg -v quiet passed. The package directory contains only the four core/YAML 3.10.2 .nupkg/.snupkg files, with no Hidi package.
  • go run github.com/rhysd/actionlint/cmd/actionlint@v1.7.7 -shellcheck= -pyflakes= .github\workflows\codeql-analysis.yml passed.
  • Programmatic checks passed for YAML, all three VS Code JSONC files, the XML project/solution graph, embedded PowerShell ASTs, and package selectors. Both EsrpCodeSigning@6 inputs are unchanged; deploy_yaml_reader is identical; deploy_lib differs only by removal of the obsolete Hidi exclusion; create_github_release differs only by removal of the Hidi executable asset attachment. Shared signing key, version props, feed/organization/ProductBin variables, feed authentication, version-check helper, and historical changelog remain unchanged. No active Hidi graph entries or files remain.
  • No live release, image push, publisher activation, or resource authorization was performed.

No new library behavior is introduced, so no new library tests or integration tests were added. Only the migrated Hidi tests are removed; the remaining suites pass unchanged.

Checklist

  • My code follows the code style of this project
  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

Versions applicability

  • My change applies to the version 1.X of the library, if so PR link:
  • My change applies to the version 2.X of the library, if so PR link: #3109 (already merged)
  • My change applies to the version 3.X of the library, if so PR link: this PR
  • I have evaluated the applicability of my change against the other versions above.

See the contributing guidelines for more information about how patches are applied across multiple versions.

Additional Notes

Publisher-handoff gate: keep this PR in draft until both the destination Docker feed-authentication follow-up microsoft/OpenAPI.NET.OData#890 (59c8956c) and Hidi NuGet ESRP handoff follow-up microsoft/OpenAPI.NET.OData#891 (125e4ff6) are accepted. The NuGet follow-up carries the source #3107 Hidi-only EsrpRelease@14, private-feed idempotent version-check helper, and package/symbol contract without changing destination library publishers. Authorized owners must then verify actual destination signing/feed/release/container resource readiness, signed artifacts, and the coordinated publisher cutover. Destination official pipeline 759's gated runs 248456/248459 are blocked at AzureCheckpoint.Authorization; service-connection/resource owners must authorize them. Destination publication switches remain false. Remote Docker validation for main passed, but review/CI acceptance and official signed-artifact readiness remain separate gates. Removing source Hidi publishing must not be treated as authorization to enable destination publishers.

This change is scoped only to main cleanup. The support/v2 cleanup is already accepted separately; support/v1 and the overall migration's publication handoff are not completed by this PR.

Follow accepted OpenAPI.NET.OData main migration PR884. Preserve current library ESRP/signing/feed/version-check and GitHub release infrastructure; point hidi documentation to its new home. Cleanup acceptance remains gated on publisher handoff readiness.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c631d217-9378-4cee-8c7e-761043ff3ae5
@github-code-quality

Copy link
Copy Markdown

Code Coverage Overview

Languages: C#

C# / code-coverage/dotnet

The overall line coverage in commit bfc6e48 in the gavinbarron-hidi-mai... branch is 93%. The line coverage in commit e1a7543 in the main branch is 61%.

Show a line coverage summary of the most impacted files.
File main e1a7543 gavinbarron-hidi-mai... bfc6e48 +/-
/home/runner/wo...ilterService.cs 82% 41% -41%
/home/runner/wo...pyReferences.cs 63% 47% -16%
/home/runner/wo...rationSearch.cs 100% 85% -15%
/home/runner/wo...OpenApiError.cs 64% 55% -9%
/home/runner/wo...mlJsonParser.cs 0% 85% +85%
/home/runner/wo...amlConverter.cs 0% 89% +89%
/home/runner/wo...ersionBudget.cs 0% 91% +91%
/home/runner/wo...piYamlReader.cs 0% 92% +92%
/home/runner/wo...gsExtensions.cs 0% 100% +100%
/home/runner/wo...aderSettings.cs 0% 100% +100%

@sonarqubecloud

sonarqubecloud Bot commented Oct 9, 2026

Copy link
Copy Markdown

This branch has not been deployed

No deployments
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