Skip to content

fix: sync OpenAPI spec with backend (members field fix)#13

Open
brandonrc wants to merge 1 commit intomainfrom
fix/sync-openapi-spec
Open

fix: sync OpenAPI spec with backend (members field fix)#13
brandonrc wants to merge 1 commit intomainfrom
fix/sync-openapi-spec

Conversation

@brandonrc
Copy link
Copy Markdown
Contributor

Summary

Syncs the OpenAPI spec with the current backend state. Key fix:
VirtualMembersListResponse had its field named items in the spec but the
backend serializes it as members. This caused the generated SDK to expect a
different field name than what the API actually returns, breaking the virtual
repo members panel in the web UI (reported in artifact-keeper/artifact-keeper#461).

Also includes new endpoints and types from the upstream auth feature (#451):

  • PUT /repositories/{key}/upstream-auth
  • POST /repositories/{key}/test-upstream
  • New fields on CreateRepositoryRequest and RepositoryResponse

Test Checklist

  • Spectral lint passes
  • All 5 SDK builds pass (TypeScript, Kotlin, Swift, Rust, Python)
  • No breaking changes (or explicitly documented)
  • Manually verified affected endpoints

SDK Impact

  • TypeScript SDK builds
  • Kotlin SDK builds
  • Swift SDK builds
  • Rust SDK builds
  • Python SDK builds
  • Breaking change documented
  • Version bump needed

…points)

Updates the spec to match the current backend:
- VirtualMembersListResponse: field renamed from "items" to "members"
  to match the Rust struct serialization
- New upstream auth endpoints (PUT upstream-auth, POST test-upstream)
- New fields on CreateRepositoryRequest (upstream_auth_type, etc.)
- New RepositoryResponse fields (upstream_auth_type, upstream_auth_configured)

The items/members mismatch caused the generated SDK to expect a
different field name than what the backend actually returns, which
could break the virtual members panel in the web UI.

Ref artifact-keeper/artifact-keeper#461
@brandonrc brandonrc requested a review from a team as a code owner March 19, 2026 13:35
@sonarqubecloud
Copy link
Copy Markdown

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