Repository navigation
Gains and Lighter read their own markets: Mobula's perp pairs catalog is gone - #3035
Merged
Merged
Conversation
#2963 lets each product answer the "Each venue at its max" tab at its own ceiling and keeps the larger room. Gains' standard pair at 200x leaves 0.305% and the degen pair at 500x 0.12%, so the tab published 500x in the max leverage column next to the standard pair's room. Only the product that reaches the venue's ceiling answers that tab now.
… is gone GET api.mobula.io/api/2/perp/pairs answers 404 since 2026-10-12; Mobula deprecated it. It was the only source of Gains' active market count and of the asset-class split for Gains and Lighter, so three boards (perp-active-markets, perp-asset-breadth, perp-capital-efficiency) have shown Gains, and perp-asset-breadth Lighter, as unresponsive for six days. Gains: backend-arbitrum.gains.trade/trading-variables. Gains delists a pair by setting its max leverage override to 1 (0.001x) and never removes it, so those are left out: 178 tradable pairs of 493 (Mobula listed 355). The pair groups give the class; an unknown group withholds the split. Gains also seeds the cohort's crypto and RWA symbol sets that Mobula used to seed for the HIP-3 dexes. Lighter: no class in the payload, so its symbols go through the router's cross-venue classification, with crypto as the default for a symbol no venue tags (it is a crypto-first venue, unlike a HIP-3 RWA dex). The copy of the three specs stops citing Mobula as the source.
This was referenced Oct 18, 2026
bakabhai993
pushed a commit
to bakabhai993/OpenChainBench
that referenced
this pull request
Oct 18, 2026
… is gone (ChainBench#3035) * the max leverage tab printed Gains at 500x beside its 200x room ChainBench#2963 lets each product answer the "Each venue at its max" tab at its own ceiling and keeps the larger room. Gains' standard pair at 200x leaves 0.305% and the degen pair at 500x 0.12%, so the tab published 500x in the max leverage column next to the standard pair's room. Only the product that reaches the venue's ceiling answers that tab now. * Gains and Lighter read their own markets: Mobula's perp pairs catalog is gone GET api.mobula.io/api/2/perp/pairs answers 404 since 2026-10-12; Mobula deprecated it. It was the only source of Gains' active market count and of the asset-class split for Gains and Lighter, so three boards (perp-active-markets, perp-asset-breadth, perp-capital-efficiency) have shown Gains, and perp-asset-breadth Lighter, as unresponsive for six days. Gains: backend-arbitrum.gains.trade/trading-variables. Gains delists a pair by setting its max leverage override to 1 (0.001x) and never removes it, so those are left out: 178 tradable pairs of 493 (Mobula listed 355). The pair groups give the class; an unknown group withholds the split. Gains also seeds the cohort's crypto and RWA symbol sets that Mobula used to seed for the HIP-3 dexes. Lighter: no class in the payload, so its symbols go through the router's cross-venue classification, with crypto as the default for a symbol no venue tags (it is a crypto-first venue, unlike a HIP-3 RWA dex). The copy of the three specs stops citing Mobula as the source. (cherry picked from commit 59c886b)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What was broken
GET api.mobula.io/api/2/perp/pairsanswers 404 since 2026-10-12: Mobula deprecated it. It was the only source of:So Gains read as unresponsive on three boards, and Lighter on perp-asset-breadth, for six days. Found by the audit checks (L2) on the release #3021 perp boards.
Fix
Gains:
backend-arbitrum.gains.trade/trading-variables. Gains never removes a pair from the array; it delists one by setting its max leverage override to 1 (0.001x at 1e3 precision: MATIC, LUNA, FTT, FB…). Those are left out: 178 tradable of 493 (Mobula listed 355). Class from Gains' own pair groups; an unknown group withholds the split rather than publishing one with a hole. Gains also seeds the crypto/RWA symbol sets Mobula used to seed for the HIP-3 dexes (only change there: BVIV now reads crypto).Lighter: no class in the payload, so its symbols go through the router's cross-venue classification, crypto as default for an untagged symbol (undercounts a Lighter-only pre-IPO synthetic, never invents one).
Local run, one tick:
Spec copy of the three benches stops citing Mobula; the hard-coded "broadest forex catalog (18 pairs)" bullet goes (9 now, tied with Ostium and Vest).
Also: the max leverage tab (#2963 follow-up)
#2963 (on dev, not yet deployed) lets each product answer "Each venue at its max" at its own ceiling and keeps the larger room, so Gains would publish 500x beside the standard pair's 200x room (0.305% instead of 0.12%). Only the ceiling product answers that tab now; test
TestAllTabReadsTheCeilingProduct.Gates
go build,go vet,go testgreen ·pnpm validategreen.