Skip to content

Spec drift: kalshi — Fill schema uses stale yes_price_fixed/no_price_fixed field names; live API returns yes_price_dollars/no_price_dollars #890

@realfishsam

Description

@realfishsam

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_fixedyes_price_dollars and no_price_fixedno_price_dollars in the YAML Fill schema and regenerate api.ts.


Found by automated spec drift audit

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1: highbugSomething isn't workingcoreCore sidecar/server logicdocumentationImprovements or additions to documentationeffort: smallspec-driftCached OpenAPI spec out of date vs venue's live docstype: inconsistency

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions