Skip to content

Spec drift: myriad — market response missing tradingModel, negRisk, volumeNotional, eventId, and 8 other new fields #916

@realfishsam

Description

@realfishsam

Exchange

myriad

Drift Type

changed_response

Severity

MEDIUM — NegRisk group markets, order-book-only markets, and volume-notional data cannot be distinguished or surfaced through the spec

Their Docs

The live Myriad API reference documents these new fields on market objects (GET /markets, GET /markets/{id}) not present in PMXT's cached MarketSummary/MarketDetail schema:

  • tradingModel (string) — "ob" for order-book markets vs "amm" for AMM markets
  • negRisk (boolean) — whether the market is part of a NegRisk event group
  • eventId (integer) — NegRisk event group ID
  • outcomeIndex (integer) — outcome index within the NegRisk event
  • volumeNotional (number) — volume in notional USD terms
  • volumeNotional24h (number) — 24h notional volume
  • shortName (string)
  • publishedAt (date-time)
  • tags (array) — distinct from topics
  • oracle (object)
  • executionMode (string)

Source: https://docs.myriad.markets/builders/myriad-api-reference (market schema)

Our Cached Spec

core/specs/myriad/myriad.yamlMarketSummary and MarketDetail schemas do not include any of these fields.

File: core/specs/myriad/myriad.yaml (MarketSummary and MarketDetail schemas)

callApi() References at Risk

  • callApi('getMarkets', ...) at fetcher.ts:187, 216 — market detail responses will include these new fields but the typed schema won't surface them

Hardcoded URL Bypasses

  • ${this.baseUrl}/markets at fetcher.ts:110, 126
  • ${this.baseUrl}/markets/${id} at fetcher.ts:293

Impact

PMXT cannot distinguish NegRisk markets from standard markets, or order-book markets from AMM markets. The tradingModel field is particularly important for routing to the correct order endpoint.

Fix: Add the new fields to MarketSummary/MarketDetail schemas in myriad.yaml; update normalizeMarket() to map tradingModel, negRisk, and eventId to appropriate normalized fields.


Found by automated spec drift audit

Metadata

Metadata

Assignees

No one assigned

    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