test: declare polling-gzip contract test capability - #193
Merged
Conversation
Advertise the polling-gzip capability so the sdk-test-harness verifies Accept-Encoding: gzip on FDv2 polling requests. The Java SDK already sends the header and decompresses transparently via OkHttp, so no SDK code change is required. Verified locally: the v3 harness polling suite (including the "method and headers" Accept-Encoding assertion) passes with the capability enabled. SDK-2718
joker23
approved these changes
Jul 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Declares the
polling-gzipcontract-test capability for the Java server SDK, so the sdk-test-harness verifiesAccept-Encoding: gzipon FDv2 polling requests.Part of epic SDK-950 (Polling Gzip Support) · ticket SDK-2718.
Why this is capability-only
The Java SDK already requests and decompresses gzip on polling transparently via OkHttp's
BridgeInterceptor(the SDK sets noAccept-Encodingheader and adds no encoding interceptor), so no SDK code change is required — only the capability declaration in the contract-test service.Changes
lib/sdk/server/contract-tests/service/src/main/java/sdktest/TestService.java— add"polling-gzip"toCAPABILITIESVerification
Ran the v3 harness polling suite locally against the built (
installDist) test service with the capability enabled — all polling tests pass, includingpolling/requests/method and headers(theAccept-Encoding: gzipassertion). The mock returns HTTP 400 if the header is absent, so a green run confirms the header is sent and responses are decompressed end-to-end.Note
Low Risk
Single string added to the contract-test capabilities array with no production SDK or runtime logic changes.
Overview
Adds
polling-gzipto the Java server contract-test service’s advertised capabilities inTestService.java, so the sdk-test-harness runs polling gzip checks (includingAccept-Encoding: gzipon FDv2 polling) against this SDK.This is a capability-only change: the harness gates those tests on the capability list returned from
GET /; no production SDK behavior is modified in this PR.Reviewed by Cursor Bugbot for commit 75435d9. Bugbot is set up for automated code reviews on this repo. Configure here.