No route answers what an asset is worth in naira

Đã đóng
#290 2 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 4 ngày

@dmoonventure070-art đang làm issue này rồi.

Từ ngày 16/10/2026.

  • #469 của @sparkysolutions10-pixel — đang mở
  • #529 của @sparkysolutions10-pixel — đang mở
  • #588 của @dmoonventure070-art — đang mở

Đánh giá

Issue này chưa được đánh giá.

Mô tả

area:pricing difficulty:intermediate epic:analytics help wanted points:150 Stellar Wave
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=NGN returning 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

Ngôn ngữ chính
TypeScript
Star
4
Fork
71
Merge trung bình
3 ngày 22 giờ
Pull request đã merge (30 ngày)
142

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của Divinity-Labs/Lens

Tất cả issue của Divinity-Labs/Lens

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.