Skip to content

Geospatial.Grpc 0.1.0-alpha.3 was never published: v0.1.0-alpha.3 release lacks the geospatial-grpc-v* publish tag (distribution drift) #83

Description

@mikemcdougall

Problem

The v0.1.0-alpha.3 release (2026-07-02, commit e156441, PR #68) published conformance fixture assets but the matching Geospatial.Grpc 0.1.0-alpha.3 NuGet package was never published. GitHub Packages still only has 0.1.0-alpha.1 and 0.1.0-alpha.2.

Root cause: the publish workflow (.github/workflows/publish-dotnet-protocol.yml) only triggers on tags matching geospatial-grpc-v*, but the alpha.3 release was cut with only the conformance v0.1.0-alpha.3 tag. No geospatial-grpc-v0.1.0-alpha.3 tag was ever pushed, so the publish never fired. (alpha.2 was published because its geospatial-grpc-v0.1.0-alpha.2 tag was pushed — last publish run is 2026-06-02, run 26853516676.)

At tag v0.1.0-alpha.3 the csproj <Version> is 0.1.0-alpha.3, so the tag/version lock-step check would pass — the publish was simply never triggered.

Why it matters now

This is live distribution drift blocking the downstream compatibility train:

  • honua-sdk-dotnet's moving compatibility canary fails every scheduled run and keeps updating alert Moving compatibility canary drift detected honua-sdk-dotnet#272: fixtures 0.1.0-alpha.3 exist with no matching package (matching package published: false), and the alpha.3 fixture feature_query_request.json cannot parse into the alpha.2 bindings (Unknown field: resultOffsetLong). Latest failing run: https://github.com/honua-io/honua-sdk-dotnet/actions/runs/30289462863
  • The SDK's promotion protocol (conformance/PINS.md) correctly refuses to promote a fixture version whose package does not exist, so the ecosystem is stuck on alpha.2 while the breaking-change baseline has moved to alpha.3.
  • honua-server also still consumes Geospatial.Grpc 0.1.0-alpha.2; it cannot adopt the finalized pre-v1 contract (ErrorDetail redesign, unified Severity, token-based/int64 pagination) until the package exists.

Acceptance criteria

  • Geospatial.Grpc 0.1.0-alpha.3 is available on the org GitHub Packages NuGet feed or an explicit decision is recorded to skip alpha.3 and instead cut+publish the next release (trunk is already at 0.2.0-alpha.1) with both tags.
    • Retro-publish path: git push origin e15644173c173e4a75e6b5b2557cd8bad4ec5906:refs/tags/geospatial-grpc-v0.1.0-alpha.3 — the existing workflow validates tag↔csproj version and smoke-tests before publishing.
  • Process fix so fixture releases and package publishes cannot skew again: either the release procedure always pushes both tags, or publish-dotnet-protocol.yml also triggers on v* tags (version-match logic updated to strip either prefix). conformance/check-version.sh already enforces csproj/VERSION lock-step, so a single-tag trigger is safe.
  • Moving compatibility canary drift detected honua-sdk-dotnet#272 can then be resolved by promoting the canary pins per its conformance/PINS.md protocol.

Affected repos

  • geospatial-grpc (fix lives here)
  • honua-sdk-dotnet (blocked consumer, alert #272)
  • honua-server (blocked consumer, still on alpha.2)

Non-goals

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions