The best route ignores multi-hop paths
メンテナーはふだん 2 日以内に返信
@dmoonventure070-art がすでに取り組んでいます。
2026年10月16日 から。
評価
この issue はまだ評価されていません。
説明
Background
src/aggregator/bestRoute.ts compares venues for a direct pair. Stellar's native path payments route through intermediate assets, and for thin pairs the two-hop route through XLM or USDC is routinely better than anything direct. Lens recommends the worse trade and says it is best.
What to build
- Multi-hop routing through a configurable set of intermediate assets, bounded in depth.
- The response shows each hop, its venue and its slippage, so the recommendation can be checked.
- A direct route still wins when it is better, and the comparison is shown.
Acceptance criteria
- Routes of at least two hops are considered
- Every hop is named with its venue and slippage
- Hop depth and intermediates are configurable
- A test covers a thin pair where two hops beat direct
Drips Wave · Complexity: Advanced · 200 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
- 平均マージ
- 2日 20時間
- マージ済み PR(30日)
- 127
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Divinity-Labs/Lens のほかの issue
-
Webhook retries have no jitter, so failures synchronise対応中かも @Richard-tobi が 8 日前に担当しました。 オープンarea:reliability difficulty:easy help wanted points:100 Stellar Wave
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
Divinity-Labs/Lens#341 · コメント 2 件 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
-
GraphQL queries bypass the per-route scope their REST equivalents require対応中かも @sparkysolutions10-pixel が 1 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
Divinity-Labs/Lens#618 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
area:tests automated live-spec-report
難易度 4/5 3〜5日 初心者へのやさしさ 28/100
Divinity-Labs/Lens#606 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信
-
The key is accepted only as a bearer token, and nothing says so対応中かも @krsnak が 7 日前に担当しました。 オープンarea:docs difficulty:easy help wanted points:100 Stellar Wave
Divinity-Labs/Lens#512 · コメント 4 件 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
-
The admin surface has no tests対応中かも @krsnak が 7 日前に担当しました。 オープンarea:testing difficulty:intermediate help wanted points:150 Stellar Wave
Divinity-Labs/Lens#510 · コメント 5 件 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
Divinity-Labs/Lens の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
MoonshotAI/kimi-code#4398 ·
メンテナーはふだん 1 日以内に返信
-
Xiaomi Mimo语音识别服务异常オープンpending triage
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
-
package-lock.json : les binaires natifs macOS et Linux de unrs-resolver ont disparu depuis #1823オープンbug dependencies
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
AxaFrance/design-system#2064 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100