Skip to content

TypeScript SDK Router.fetchMarketMatches missing query, category, minDifference, and sort parameters #857

@realfishsam

Description

@realfishsam

Gap

The core FetchMarketMatchesParams interface exposes four parameters that are absent from the TypeScript SDK Router.fetchMarketMatches typed overloads: query, category, minDifference, and sort. Users calling fetchMarketMatches via the TypeScript SDK cannot use free-text search, category filtering, minimum price-difference filtering, or sort ordering.

Core

core/src/router/types.ts:74

export interface FetchMarketMatchesParams {
    query?: string;          // free-text search — NOT in TS SDK
    category?: string;       // category filter — NOT in TS SDK
    market?: UnifiedMarket;
    marketId?: string;
    slug?: string;
    url?: string;
    relation?: MatchRelation;
    minConfidence?: number;
    limit?: number;
    includePrices?: boolean;
    minDifference?: number;  // minimum price spread — NOT in TS SDK
    sort?: 'confidence' | 'volume' | 'priceDifference';  // NOT in TS SDK
}

TypeScript SDK

sdks/typescript/pmxt/router.ts:221 — the typed overload only exposes:

fetchMarketMatches(params?: {
    market?: UnifiedMarket;
    marketId?: string;
    slug?: string;
    url?: string;
    relation?: MatchRelation;
    minConfidence?: number;
    limit?: number;
    includePrices?: boolean;
}): Promise<MatchResult[]>

query, category, minDifference, and sort are absent from this overload.

Python SDK

sdks/python/pmxt/router.py:147 — Python SDK does expose query and category but also omits min_difference and sort. (The Python-only gap for those two params is tracked separately.)

Evidence

FetchMarketMatchesParams in core/src/router/types.ts:74 defines all eight fields. The TypeScript SDK typed overload at router.ts:221 omits four of them. Because the overload uses a strict typed object rather than forwarding ...params, a TypeScript caller who tries to pass query or sort gets a compile-time type error.

Impact

  • Free-text market search across exchanges (query) is unavailable from the TypeScript SDK Router.
  • Category-scoped match lookups (category) are unavailable.
  • Filtering by minimum price difference (minDifference) is unavailable.
  • Sorting results by volume or price difference (sort) is unavailable.
    All four capabilities are available in the Python SDK (except minDifference and sort) and via direct core usage.

Found by automated Core-to-SDK surface coverage audit

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