Skip to content

Add market cache and HIP-4 outcome support#130

Closed
InTheta wants to merge 7 commits into
nktkas:mainfrom
InTheta:main
Closed

Add market cache and HIP-4 outcome support#130
InTheta wants to merge 7 commits into
nktkas:mainfrom
InTheta:main

Conversation

@InTheta

@InTheta InTheta commented May 6, 2026

Copy link
Copy Markdown

Summary

  • add market-cache utilities for Hyperliquid metadata, builder DEXs, and HIP-4 outcome routing
  • expose HIP-4 outcome market lookup helpers, asset IDs, token names, and allMids overlays
  • add docs, tests, transport improvements, and npm release helper workflow updates used by the fork

Validation

  • scanned branch diff for env files, private keys, wallet material, and secret-like patterns
  • deno task check
  • deno test tests/utils/marketCache.test.ts
  • live non-trading mainnet checks for outcomeMeta and allMids #... entries

@InTheta InTheta marked this pull request as ready for review May 7, 2026 07:05
@nktkas

nktkas commented Jun 8, 2026

Copy link
Copy Markdown
Owner

Thanks for the PR, but it mixes too many unrelated things in one diff, and most of them either already exist or don't belong in the SDK:

  • HyperliquidMarketCache — this is a large application-level layer on top of a low-level SDK, and it partially duplicates existing code (tick/lot math from _format.ts, SymbolConverter, etc.). The maintenance surface is too big for what it adds.
  • HIP-4 outcome support — already added in d634739.
  • HTTP rate limiting (TokenBucketRateLimiter, rateLimit) — I think this belongs either in the application layer, or in a dedicated transport wrapper that fully implements the documented rate limits — not a partial token bucket inside HttpTransport.
  • SymbolConverter auto-refresh — refresh scheduling belongs on the application side as well.
  • allMids dex filter — not needed, the current check is correct: the main feed omits dex, it doesn't send "".
  • npm release scripts/workflows, @intheta/hyperliquid, docs/omni-fork-release.md — these are specific to your fork and don't belong upstream.

The WebSocket keep-alive pong timeout is a good change, but it should come as a separate PR.

Closing — too broad to merge as-is.

@nktkas nktkas closed this Jun 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants