Repository navigation
sdk-sync: API 2.0.0+ffb34b7 - #88
marketdata-sdk-sync[bot] wants to merge 1 commit into
Conversation
tests: Confirmed red, as expected — fails to compile because `DteFilter` doesn't exist yet (phase 2 will add it). Stopping here per instructions. Added 12 tests to `OptionsResourceTest.java` (3 wire, 1 regression, 4 validation, 1 parity) and `OptionsIntegrationTest.java` (3 integration), exactly per the plan, referencing a not-yet-existing `DteFilter` type. `gradle test --no-daemon --console=plain` fails as required, with `compileTestJava` erroring on the missing `DteFilter` symbol. No production code or other test lines were touched. implement: All changes stay within production/test/doc scope, no CHANGELOG, no commit made. Added `DteFilter` (sealed, extends `ExpirationFilter`): `values`/`range`/`comparison` factories for the chain endpoint's widened `?dte=` parameter (comma-list, closed range, comparison operator), each bounded to 0..36500 per the API description. Added the pass-through overload `ExpirationFilter.dte(DteFilter)`; the existing `dte(int)` single-value factory, its validation, and its wire form are unchanged. Wired the three new forms into `OptionsResource.applyExpirationFilter` and documented them in `docs/options/chain.md`. One wire test's expectation was wrong (commas are URL-encoded on this wire, per the repo's existing `columns` convention) — fixed the test to decode before asserting, as planned. `gradle test` and `gradle build` both pass.
🧾 Job log — sdk-syncsdk-auto-sync job log
Changes in the API surface1. test planCoder (21 turns, US$ 0.78) — test plan, 12 case(s) (wire 3, regression 1, validation 4, parity 1, integration 3):
Plan reviewer (15 turns, US$ 0.57): approved
2. testsCoder (11 turns, US$ 0.66):
Gates:
3. implementCoder (32 turns, US$ 1.10):
Gates:
4. review 15. assessThe pipeline:
Unresolved findings
Totals
Agent runs
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #88 +/- ##
============================================
- Coverage 98.27% 98.26% -0.02%
- Complexity 1043 1055 +12
============================================
Files 123 124 +1
Lines 2606 2644 +38
Branches 301 306 +5
============================================
+ Hits 2561 2598 +37
- Partials 45 46 +1
Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
|
Closed to rerun the sdk-sync pipeline from scratch for API 2.0.0 (shorter cycle). |
Changes in the API surface
Snapshots
ae2b047c8f6f→c2a31e277345:What the agent did
tests: Confirmed red, as expected — fails to compile because
DteFilterdoesn't exist yet (phase 2 will add it). Stopping here per instructions.Added 12 tests to
OptionsResourceTest.java(3 wire, 1 regression, 4 validation, 1 parity) andOptionsIntegrationTest.java(3 integration), exactly per the plan, referencing a not-yet-existingDteFiltertype.gradle test --no-daemon --console=plainfails as required, withcompileTestJavaerroring on the missingDteFiltersymbol. No production code or other test lines were touched.implement: All changes stay within production/test/doc scope, no CHANGELOG, no commit made.
Added
DteFilter(sealed, extendsExpirationFilter):values/range/comparisonfactories for the chain endpoint's widened?dte=parameter (comma-list, closed range, comparison operator), each bounded to 0..36500 per the API description. Added the pass-through overloadExpirationFilter.dte(DteFilter); the existingdte(int)single-value factory, its validation, and its wire form are unchanged. Wired the three new forms intoOptionsResource.applyExpirationFilterand documented them indocs/options/chain.md. One wire test's expectation was wrong (commas are URL-encoded on this wire, per the repo's existingcolumnsconvention) — fixed the test to decode before asserting, as planned.gradle testandgradle buildboth pass.Files
docs/options/chain.mdsrc/integrationTest/java/com/marketdata/sdk/OptionsIntegrationTest.javasrc/main/java/com/marketdata/sdk/OptionsResource.javasrc/main/java/com/marketdata/sdk/options/DteFilter.javasrc/main/java/com/marketdata/sdk/options/ExpirationFilter.javasrc/test/java/com/marketdata/sdk/OptionsResourceTest.javaTest plan
12 case(s) (wire 3, regression 1, validation 4, parity 1, integration 3)
chainExpirationFilterDteValuesTranslatesToCommaSeparatedDtechainExpirationFilterDteRangeTranslatesToDashedDtechainExpirationFilterDteComparisonTranslatesToOperatorPrefixedDtechainExpirationFilterDteTranslatesToDteParamdteFilterValuesRejectsOutOfRangeValuedteFilterRangeRejectsMinGreaterThanMaxdteFilterRangeRejectsOutOfRangeBounddteFilterComparisonRejectsOutOfRangeValuechainExpirationFilterDteRangeSyncMatchesAsyncWirechainDteValuesReturnsClosestExpirationPerValueDeduplicatedchainDteRangeReturnsExpirationsWithinBoundschainDteComparisonReturnsExpirationsSatisfyingOperatorLive-API suite
src/integrationTest/java/com/marketdata/sdk/OptionsIntegrationTest.javaFiles of this suite changed by this pull request. The pipeline did not run the suite (it has no API token); the repository runs it with
/integrationtest.Job log
The full record of this job — every phase, test and build result, review findings and how they were resolved, and each fix round after the PR was opened — is in the job log comment.
3 coder run(s) · 1 review(s) · 79 turns · 6,792,585 tokens · US$ 3.12 · item
5c097984-5f7b-401b-abba-235a3f417767Agent runs