Skip to content

TidalAPI: accept flexible create dry-run responses - #360

Draft
stefanmoro wants to merge 1 commit into
mainfrom
agent/dry-run-success-response-compat
Draft

TidalAPI: accept flexible create dry-run responses#360
stefanmoro wants to merge 1 commit into
mainfrom
agent/dry-run-success-response-compat

Conversation

@stefanmoro

@stefanmoro stefanmoro commented Aug 8, 2026

Copy link
Copy Markdown
Member

Summary

  • accept resource-create dry runs that succeed with no representation, whether the server responds with the current empty 204 or another successful 2xx
  • treat a generic JSON:API success document as an absent typed create body while keeping ordinary typed create decoding strict
  • add regression coverage for current/future empty and generic responses, normal typed creates, and malformed typed responses

Context

Server PR #1787 keeps resource-create dryRun at 204 with no body while standardizing normal creates to 201 and non-create mutations to 200. A later server change may make create dryRun an ordinary successful 2xx, with an empty body or a minimal JSON:API document.

Retrofit already accepts all successful 2xx responses and handles 204. This closes the 200/202 response-conversion gap without weakening typed create responses.

There are currently no first-party Android call sites for artistsPost or appreciationsPost, but the shared SDK boundary needs to be forward-compatible before one is added.

Verification

  • changed-file ktfmt lint
  • ./gradlew :tidalapi:testDebugUnitTest :tidalapi:lint

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