1.10.0: Lighter on Robinhood Chain, account positions, Lighter liquidations - #4
Merged
Merged
Conversation
…ations - --exchange rh-lighter (Lighter on Robinhood Chain, the second Lighter deployment) on every shared market-data command Lighter mainnet supports. - Live rh_lighter_orderbook, rh_lighter_trades, rh_lighter_open_interest and rh_lighter_funding streams; --interval-ms on rh_lighter_orderbook; rh_lighter_candles is replay-only. - oxa positions get/history/changes/market/summary/all on hyperliquid, hip3, lighter and rh-lighter, plus account/account-history on hyperliquid and hip3, and oxa accounts by-l1 for Lighter mainnet. - Liquidation history and volume on both Lighter deployments. - orders/l4/l2 refuse Lighter deployments before any request. - Lighter trade ranges pass the finalization meta through. - Requires @0xarchive/sdk ^1.12.0. - Package-contents allowlist check and a CI workflow.
…README table - Robinhood Chain liquidations are served from 2026-08-22 18:43 UTC, like the order book, OI, and funding. The README venue table, the liquidations intro, and the CHANGELOG said 2026-06-26 20:10:26 UTC, which the API refuses. - oxa trades fetch passes the response meta through on Lighter ranges only, so Hyperliquid and HIP-3 trades JSON is unchanged. Test added. - The oxa positions market README row broke on GitHub at a pipe inside a code span; the side filter is now written out. - positions changes help and README copy: the change log lists every fill leg, including Lighter legs that leave the size unchanged.
The API now serves Robinhood Chain liquidations from the venue's first trade, the same floor as trades. Rows before live capture were backfilled from the venue's finalized export and carry source "bucket" with an empty rawJson; live rows carry source "ws" and the venue's raw JSON. - README venue table, liquidations intro, and row notes; CHANGELOG. - oxa liquidations history help names both Lighter floors and the backfilled-row fields. - Release test pins the floor in the README and CHANGELOG.
Member
Author
|
|
Brings in order-flow --cursor paging and --interval 1m on the aggregated history commands. Their Unreleased changelog entries move into 1.10.0.
- oxa positions summary --cursor without --start and --end is refused as a validation error (exit 2) before any request. A summary cursor pages an hourly series and is bound to that window; the SDK refusal used to surface as an internal error (exit 5). Test added. - README: which reads carry the account summary on oxa positions get, the clamp fields on the change log, what an empty page before coverage looks like, and how quality reads per venue (Hyperliquid and HIP-3 normally complete; the latest Lighter day can read degraded at snapshot level with preliminary rows until the daily reconcile).
Ranges and --timestamp reads before coverage succeed with an empty list; get, changes, and Lighter history add the notice. An --hour with no committed snapshot is an API error on market and all.
0xFantomMenace
added a commit
that referenced
this pull request
Sep 29, 2026
…ations (#4) - --exchange rh-lighter (Lighter on Robinhood Chain, the second Lighter deployment) on every shared market-data command Lighter mainnet supports, and live rh_lighter_orderbook, rh_lighter_trades, rh_lighter_open_interest and rh_lighter_funding streams. - oxa positions get/history/changes/market/summary/all on hyperliquid, hip3, lighter and rh-lighter, account/account-history on hyperliquid and hip3, and oxa accounts by-l1 for Lighter mainnet. - Liquidation history and volume on both Lighter deployments. - Includes order-flow --cursor paging and --interval 1m on the aggregated history commands from master. - orders/l4/l2 refuse Lighter deployments before any request; Lighter trade ranges pass the finalization meta through. - Requires @0xarchive/sdk ^1.12.0. Package-contents check and CI workflow.
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.
Summary
CLI 1.10.0. Three additions through
@0xarchive/sdk1.12.0, plus the order-flow paging and 1-minute interval work already onmaster:--exchange rh-lighter, presented as the second Lighter deployment (Lighter mainnet stays--exchange lighter). It works on every shared command Lighter mainnet supports: instruments, order book and history, trades (canonical range and preliminary recent tier), candles, funding, open interest, liquidations, prices, summary, freshness, andauth test. USDG-quoted, 84 markets (57 perp, 27 spot); spot symbols are dashed (AAPL-USDG). No L3.oxa stream orderbook|trades <symbol> --exchange rh-lighter, andoxa stream subscribeacceptsrh_lighter_orderbook,rh_lighter_trades,rh_lighter_open_interest,rh_lighter_funding. Same message shapes as thelighter_*live channels;--interval-ms(100 to 5000) works onrh_lighter_orderbook; drop notices are warnings, as on mainnet.rh_lighter_candlesis replay-only and refused before a socket opens.oxa positions get|history|changes|market|summary|allonhyperliquid,hip3,lighter,rh-lighter, plusoxa positions account|account-historyon Hyperliquid and HIP-3, andoxa accounts by-l1for Lighter mainnet. Hyperliquid and HIP-3 take--address 0x...; Lighter takes--account <index>. Times accept ISO 8601 or Unix ms and are sent as Unix ms. JSON output is{ data, nextCursor, meta }, so the as-of time, source, quality, staleness, clamp, and finalization fields are always visible.oxa liquidations history|volumeacceptlighterandrh-lighter, with Lighter-specific pretty tables.liquidations userstays Hyperliquid only. Robinhood Chain liquidations are served from 2026-06-26 20:10:26 UTC, the same floor as trades; order book, OI, and funding start at 2026-08-22 18:43 UTC. Rows from before live capture carrysourcebucketwith an emptyrawJson; live rows carrysourcewsand the venue's raw JSON.Also:
master:--cursoronoxa orders flowandoxa hip4 orders flow, and--interval 1mon the aggregated history commands. Their changelog entries moved from Unreleased into 1.10.0.oxa positions summary --cursorwithout--startand--endis now a validation error (exit 2) before any request, since a summary cursor pages an hourly series bound to its window.oxa orders,oxa l4, andoxa l2refuselighter/rh-lighterwith a clear message before any request.oxa trades fetchpasses the responsemetathrough, includingfinalizedThrough,requestedEnd, andclampedTo. Hyperliquid and HIP-3 trades output is unchanged.npm run check:pack: fails unless the tarball is exactlyLICENSE,README.md,dist/cli.js,dist/cli.js.map,package.json, and the bundle reports the package version.SDK dependency
@0xarchive/sdk1.12.0 is released alongside this version. The commands read the new SDK resources through small local interfaces, so the CLI type-checks against both the published SDK and 1.12.0, and an install older than the floor exits with "Support for ... requires @0xarchive/sdk 1.12.0 or newer" instead of a TypeError. Until 1.12.0 is on npm, CI installs the newest published SDK for that run only and says so in a warning. Publish this package after the SDK.Testing
npm run typecheck: clean against the published SDK and against a build of SDK 1.12.0.npm test: 144 tests pass (7 files).npm run buildandnpm run check:pack: pass.rh-lightercommand was run against the live API through SDK 1.12.0: wallet and account reads (latest, exact hour, reconstructed, before coverage), history, changes with a clamped end, market listings with every filter, summary now and as a paged series, bulk by hour, account summaries, the L1 lookup, and the shared market-data commands onrh-lighter, plus liverh_lighter_*streams. Output shapes and meta fields match the README.