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.yaml — MarketSummary 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
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 cachedMarketSummary/MarketDetailschema:tradingModel(string) —"ob"for order-book markets vs"amm"for AMM marketsnegRisk(boolean) — whether the market is part of a NegRisk event groupeventId(integer) — NegRisk event group IDoutcomeIndex(integer) — outcome index within the NegRisk eventvolumeNotional(number) — volume in notional USD termsvolumeNotional24h(number) — 24h notional volumeshortName(string)publishedAt(date-time)tags(array) — distinct fromtopicsoracle(object)executionMode(string)Source: https://docs.myriad.markets/builders/myriad-api-reference (market schema)
Our Cached Spec
core/specs/myriad/myriad.yaml—MarketSummaryandMarketDetailschemas do not include any of these fields.File:
core/specs/myriad/myriad.yaml(MarketSummary and MarketDetail schemas)callApi() References at Risk
callApi('getMarkets', ...)atfetcher.ts:187, 216— market detail responses will include these new fields but the typed schema won't surface themHardcoded URL Bypasses
${this.baseUrl}/marketsatfetcher.ts:110, 126${this.baseUrl}/markets/${id}atfetcher.ts:293Impact
PMXT cannot distinguish NegRisk markets from standard markets, or order-book markets from AMM markets. The
tradingModelfield is particularly important for routing to the correct order endpoint.Fix: Add the new fields to
MarketSummary/MarketDetailschemas inmyriad.yaml; updatenormalizeMarket()to maptradingModel,negRisk, andeventIdto appropriate normalized fields.Found by automated spec drift audit