Skip to content

Python SDK base Exchange incorrectly exposes pre_warm_market, get_event_by_id, get_event_by_slug — extends the misclassification pattern of issue #862 #1428

Description

@realfishsam

Gap type

SDK phantom / incorrect exposure (exchange-specific methods on base class)

Summary

Three exchange-specific methods are placed directly on the Python SDK's base Exchange class even though they exist only on a single concrete exchange in core. This is the same misclassification identified for Limitless watch methods in issue #862, extended to Polymarket-specific and Probable-specific methods.

Core

  • preWarmMarket(outcomeId)core/src/exchanges/polymarket/index.ts:219. Only on PolymarketExchange.
  • getEventById(id)core/src/exchanges/probable/index.ts:158. Only on ProbableExchange.
  • getEventBySlug(slug)core/src/exchanges/probable/index.ts:177. Only on ProbableExchange.

None of these are on BaseExchange or any other exchange.

Python SDK

sdks/python/pmxt/client.py

  • Line 2888: pre_warm_market(outcome_id) — on base Exchange class
  • Line 2901: get_event_by_id(id) — on base Exchange class
  • Line 2914: get_event_by_slug(slug) — on base Exchange class

These methods are not narrowed to the Polymarket or Probable subclasses in sdks/python/pmxt/_exchanges.py.

TypeScript SDK

sdks/typescript/pmxt/client.ts — none of these three methods appear on the base Exchange class (they are absent entirely; separate issues #187 and #188 track their absence from the correct TS SDK subclasses).

Expected behaviour

Metadata

Metadata

Assignees

No one assigned

    Labels

    core-sdk-gapCore engine capabilities not exposed in SDKs

    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