No route answers what an asset is worth in naira
メンテナーはふだん 3 日以内に返信
@dmoonventure070-art がすでに取り組んでいます。
2026年10月16日 から。
評価
この issue はまだ評価されていません。
説明
Background
Every price in Lens is quoted against another asset. The wallet consuming it serves users whose unit of account is naira, and it converts on its own, which means the conversion is unreviewable and inconsistent between clients.
What to build
GET /price/:asset/fiat?currency=NGNreturning the asset's price in a fiat currency, naming the rate source and its age.- Several currencies, from configuration, with the ones Lens cannot source refused explicitly.
- Never invent a cross rate without saying which two rates it was built from.
Acceptance criteria
- Fiat-denominated prices with the rate source and its age named
- Unsupported currencies are refused with a list of supported ones
- A cross rate states both legs
- A stale fiat rate is marked, not silently used
Drips Wave · Complexity: Intermediate · 150 points
Repo: Divinity-Labs/Lens. Node + Fastify + Prisma + Postgres. Tests are vitest (npm test), not jest — jest against this repo fails every file and tells you nothing.
?network= is not optional on a new route. Every row carries a network and the indexes lead with it. Read req.network ?? activeNetwork, filter on it, echo it in the response, and declare the parameter in openapi.yaml. tests/openapi.test.ts boots the server and fails if a registered route is missing from the spec.
A number without provenance is not an answer. Every figure this batch adds must carry what it was computed from: which venues, how many samples, how fresh. The point of Lens is that its numbers can be checked.
Never elide a contract id or an issuer. Take addresses from the protocol's own documentation and write them whole. A sibling repo's issue wrote CD2W5LUR…XZ4L and five contributors invented plausible contract ids to fill the gap.
Say when you cannot answer. An asset with no liquidity, a pair with one venue, a window with a gap — each has an honest answer that is not zero and not a 500. Zero is a number people act on.
Required: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk
- 主要言語
- TypeScript
- スター
- 4
- フォーク
- 71
- 平均マージ
- 3日 6時間
- マージ済み PR(30日)
- 144
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Divinity-Labs/Lens のほかの issue
-
Webhook retries have no jitter, so failures synchronise対応中かも @Richard-tobi が 9 日前に担当しました。 オープンarea:reliability difficulty:easy help wanted points:100 Stellar Wave
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
Divinity-Labs/Lens#341 · コメント 2 件 · 担当者 1 名 ·
メンテナーはふだん 3 日以内に返信
-
upsertPricePoints can synthesize an event id from the wall clock, breaking dedupe対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
Divinity-Labs/Lens#620 ·
メンテナーはふだん 3 日以内に返信
-
GraphQL queries bypass the per-route scope their REST equivalents require対応中かも @sparkysolutions10-pixel が 2 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
Divinity-Labs/Lens#618 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
area:tests automated live-spec-report
難易度 4/5 3〜5日 初心者へのやさしさ 28/100
Divinity-Labs/Lens#606 · コメント 2 件 ·
メンテナーはふだん 3 日以内に返信
-
The key is accepted only as a bearer token, and nothing says so対応中かも @krsnak が 8 日前に担当しました。 オープンarea:docs difficulty:easy help wanted points:100 Stellar Wave
Divinity-Labs/Lens#512 · コメント 4 件 · 担当者 1 名 ·
メンテナーはふだん 3 日以内に返信
Divinity-Labs/Lens の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
Merit-Systems/x402scan#1312 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
Native Web
難易度 1/5 1時間未満 初心者へのやさしさ 80/100
digitalfabrik/integreat-app#4517 ·
メンテナーはふだん 2 日以内に返信
-
TLS guide repeats certs/ in the certificate directory対応中かも @maheshrijal が今日担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
prometheus/docs#3156 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
medusajs/dtc-starter#90 ·
メンテナーはふだん 1 日以内に返信