Skip to content

Feat/custom pyth pro fetcher#92

Open
jasperdg wants to merge 3 commits intomainfrom
feat/custom-pyth-pro-fetcher
Open

Feat/custom pyth pro fetcher#92
jasperdg wants to merge 3 commits intomainfrom
feat/custom-pyth-pro-fetcher

Conversation

@jasperdg
Copy link
Copy Markdown
Member

@jasperdg jasperdg commented Mar 6, 2026

Motivation

(Write your motivation here)

Explanation of Changes

(Write your explanation here)

Testing

(Write your test plan here)

Related PRs and Issues

(Link your related PRs and Issues here)

jasperdg added 2 commits March 6, 2026 15:24
Introduces a pluggable fetcher abstraction that allows routes to opt into
custom fetch logic instead of the default HTTP passthrough.

- Add Fetcher interface (types.ts) and a registry (index.ts) with built-in
  'default' and 'pyth-pro' fetchers
- pyth-pro fetcher: uses @pythnetwork/pyth-lazer-sdk to call getLatestPrice
  or getPrice based on the upstream URL path (/v1/latest_price vs /v1/price),
  caches PythLazerClient per base-URL+token, and validates that timestamp
  (whole-second microseconds) is present for the /v1/price endpoint
- proxy-server: route handler selects fetcher by name from the route config,
  falls back to defaultFetcher when none is specified
- config-parser: adds optional 'fetcher' field to RouteSchema; skips unused
  path-variable warnings for custom fetcher routes
- headers util and verify-with-retry improvements
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.

1 participant