Exchange
kalshi
Drift Type
changed_response
Severity
HIGH — spec documents wrong field names on Fill objects; normalizer already uses the correct names but the spec is misleading and may break code generated from the spec
Their Docs
The live Kalshi spec uses yes_price_dollars and no_price_dollars (FixedPointDollars strings) on Fill objects. The _fixed suffix naming was deprecated and replaced with _dollars suffix. The fields yes_price_fixed / no_price_fixed are no longer returned by the API.
Source: https://docs.kalshi.com/openapi.yaml (Fill schema)
Our Cached Spec
core/specs/kalshi/Kalshi.yaml — Fill schema still declares yes_price_fixed and no_price_fixed as required fields. These field names do not appear in live API responses.
File: core/specs/kalshi/Kalshi.yaml (Fill schema)
callApi() References at Risk
callApi('GetFills', ...) at fetcher.ts:371 — Fill responses are affected
- The normalizer at
normalizer.ts:244 already reads raw.yes_price_dollars (correct name), so the normalizer is not broken, but the spec mismatch will confuse spec-driven tooling
Hardcoded URL Bypasses
None
Impact
Any code that generates typed Fill objects from the OpenAPI spec will look for yes_price_fixed/no_price_fixed and receive undefined. The normalizer happens to use the correct field name directly, but the spec YAML is wrong and must be corrected to prevent future regressions.
Fix: Rename yes_price_fixed → yes_price_dollars and no_price_fixed → no_price_dollars in the YAML Fill schema and regenerate api.ts.
Found by automated spec drift audit
Exchange
kalshi
Drift Type
changed_response
Severity
HIGH — spec documents wrong field names on Fill objects; normalizer already uses the correct names but the spec is misleading and may break code generated from the spec
Their Docs
The live Kalshi spec uses
yes_price_dollarsandno_price_dollars(FixedPointDollars strings) on Fill objects. The_fixedsuffix naming was deprecated and replaced with_dollarssuffix. The fieldsyes_price_fixed/no_price_fixedare no longer returned by the API.Source: https://docs.kalshi.com/openapi.yaml (Fill schema)
Our Cached Spec
core/specs/kalshi/Kalshi.yaml— Fill schema still declaresyes_price_fixedandno_price_fixedas required fields. These field names do not appear in live API responses.File:
core/specs/kalshi/Kalshi.yaml(Fill schema)callApi() References at Risk
callApi('GetFills', ...)atfetcher.ts:371— Fill responses are affectednormalizer.ts:244already readsraw.yes_price_dollars(correct name), so the normalizer is not broken, but the spec mismatch will confuse spec-driven toolingHardcoded URL Bypasses
None
Impact
Any code that generates typed Fill objects from the OpenAPI spec will look for
yes_price_fixed/no_price_fixedand receiveundefined. The normalizer happens to use the correct field name directly, but the spec YAML is wrong and must be corrected to prevent future regressions.Fix: Rename
yes_price_fixed→yes_price_dollarsandno_price_fixed→no_price_dollarsin the YAML Fill schema and regenerateapi.ts.Found by automated spec drift audit