The best route ignores multi-hop paths
I maintainer di solito rispondono entro 3 giorni
@dmoonventure070-art ci sta già lavorando.
Dal 16/10/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
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
- Lingua principale
- TypeScript
- Stelle
- 4
- Fork
- 71
- Merge medio
- 3g 6h
- PR unite (30g)
- 144
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Divinity-Labs/Lens
-
Webhook retries have no jitter, so failures synchroniseForse già presa @Richard-tobi l’ha presa 9 giorni fa. Apertaarea:reliability difficulty:easy help wanted points:100 Stellar Wave
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
Divinity-Labs/Lens#341 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 3 giorni
-
upsertPricePoints can synthesize an event id from the wall clock, breaking dedupeForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
Divinity-Labs/Lens#620 ·
I maintainer di solito rispondono entro 3 giorni
-
GraphQL queries bypass the per-route scope their REST equivalents requireForse già presa @sparkysolutions10-pixel l’ha presa 2 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
Divinity-Labs/Lens#618 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
area:tests automated live-spec-report
Difficoltà 4/5 3-5 giorni Idoneità per principianti 28/100
Divinity-Labs/Lens#606 · 2 commenti ·
I maintainer di solito rispondono entro 3 giorni
-
The key is accepted only as a bearer token, and nothing says soForse già presa @krsnak l’ha presa 7 giorni fa. Apertaarea:docs difficulty:easy help wanted points:100 Stellar Wave
Divinity-Labs/Lens#512 · 4 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di Divinity-Labs/Lens
Issue simili
-
type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
I maintainer di solito rispondono entro 1 giorno
-
0️⃣ phase/new
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
microsoft/playwright#43640 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100