[GH-ISSUE #621] coverage: Add missing builds/TestFlight relationship endpoints (OpenAPI) #176

Closed
opened 2026-02-26 21:33:54 +03:00 by kerem · 0 comments
Owner

Originally created by @rudrankriyam on GitHub (Feb 18, 2026).
Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/621

Context

These endpoints exist in the offline OpenAPI snapshot (docs/openapi/latest.json, indexed by docs/openapi/paths.txt) but are currently missing from internal/asc client coverage.

Goal

Add ASC client methods for the endpoints below (method + path).

Missing endpoints

  • DELETE /v1/betaGroups/{id}/relationships/builds
  • GET /v1/betaAppLocalizations/{id}/relationships/app
  • GET /v1/betaAppReviewDetails/{id}/relationships/app
  • GET /v1/betaAppReviewSubmissions/{id}/relationships/build
  • GET /v1/betaBuildLocalizations/{id}/relationships/build
  • GET /v1/betaFeedbackCrashSubmissions/{id}/relationships/crashLog
  • GET /v1/betaGroups/{id}/relationships/app
  • GET /v1/betaGroups/{id}/relationships/betaRecruitmentCriteria
  • GET /v1/betaGroups/{id}/relationships/betaRecruitmentCriterionCompatibleBuildCheck
  • GET /v1/buildBetaDetails/{id}/relationships/build
  • GET /v1/buildBundles/{id}/relationships/appClipDomainCacheStatus
  • GET /v1/buildBundles/{id}/relationships/appClipDomainDebugStatus
  • GET /v1/buildBundles/{id}/relationships/betaAppClipInvocations
  • GET /v1/buildBundles/{id}/relationships/buildBundleFileSizes
  • GET /v1/buildUploads/{id}/relationships/buildUploadFiles
  • GET /v1/builds/{id}/relationships/appEncryptionDeclaration
  • GET /v1/builds/{id}/relationships/betaAppReviewSubmission
  • PATCH /v1/builds/{id}/relationships/appEncryptionDeclaration
  • POST /v1/betaGroups/{id}/relationships/builds

Where/what to add

  • Implement in internal/asc/client_build_relationships.go, internal/asc/client_build_bundles.go, and internal/asc/client_testflight_relationships.go (plus related beta/build client files).
  • Add missing wrapper methods for relationship endpoints currently only reachable via variable relationship name.
  • Tests: request-shaping tests + payload tests for POST/PATCH/DELETE relationship mutations.

Test plan

  • Add request-shaping tests using newTestClient (assert method + path + query).
  • For mutation endpoints (POST/PATCH/DELETE), assert request method + path and (when applicable) JSON relationship payload shape.

Acceptance criteria

  • All endpoints listed are implemented in internal/asc with tests.
  • ASC_BYPASS_KEYCHAIN=1 make test passes.
Originally created by @rudrankriyam on GitHub (Feb 18, 2026). Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/621 ## Context These endpoints exist in the offline OpenAPI snapshot (`docs/openapi/latest.json`, indexed by `docs/openapi/paths.txt`) but are currently missing from `internal/asc` client coverage. ## Goal Add ASC client methods for the endpoints below (method + path). ## Missing endpoints - [ ] DELETE /v1/betaGroups/{id}/relationships/builds - [ ] GET /v1/betaAppLocalizations/{id}/relationships/app - [ ] GET /v1/betaAppReviewDetails/{id}/relationships/app - [ ] GET /v1/betaAppReviewSubmissions/{id}/relationships/build - [ ] GET /v1/betaBuildLocalizations/{id}/relationships/build - [ ] GET /v1/betaFeedbackCrashSubmissions/{id}/relationships/crashLog - [ ] GET /v1/betaGroups/{id}/relationships/app - [ ] GET /v1/betaGroups/{id}/relationships/betaRecruitmentCriteria - [ ] GET /v1/betaGroups/{id}/relationships/betaRecruitmentCriterionCompatibleBuildCheck - [ ] GET /v1/buildBetaDetails/{id}/relationships/build - [ ] GET /v1/buildBundles/{id}/relationships/appClipDomainCacheStatus - [ ] GET /v1/buildBundles/{id}/relationships/appClipDomainDebugStatus - [ ] GET /v1/buildBundles/{id}/relationships/betaAppClipInvocations - [ ] GET /v1/buildBundles/{id}/relationships/buildBundleFileSizes - [ ] GET /v1/buildUploads/{id}/relationships/buildUploadFiles - [ ] GET /v1/builds/{id}/relationships/appEncryptionDeclaration - [ ] GET /v1/builds/{id}/relationships/betaAppReviewSubmission - [ ] PATCH /v1/builds/{id}/relationships/appEncryptionDeclaration - [ ] POST /v1/betaGroups/{id}/relationships/builds ## Where/what to add - Implement in `internal/asc/client_build_relationships.go`, `internal/asc/client_build_bundles.go`, and `internal/asc/client_testflight_relationships.go` (plus related beta/build client files). - Add missing wrapper methods for relationship endpoints currently only reachable via variable relationship name. - Tests: request-shaping tests + payload tests for POST/PATCH/DELETE relationship mutations. ## Test plan - Add request-shaping tests using `newTestClient` (assert method + path + query). - For mutation endpoints (POST/PATCH/DELETE), assert request method + path and (when applicable) JSON relationship payload shape. ## Acceptance criteria - All endpoints listed are implemented in `internal/asc` with tests. - `ASC_BYPASS_KEYCHAIN=1 make test` passes.
kerem 2026-02-26 21:33:54 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/App-Store-Connect-CLI#176
No description provided.