Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

bug: market switcher search reports "No markets found" for legacy markets

Abierto Apto para principiantes
#3,127 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@shivam-V8 ya está trabajando en esto.

Desde el 11/10/2026.

  • #3129 de @shivam-V8 — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
82/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
typescript
Área
frontend

Línea de trabajo

El problema está en src/components/MarketSwitcher.tsx: el cálculo de noResults alrededor de las líneas 614-620 omite legacy, y el grupo legacy solo se renderiza cuando showLegacy está activado (alrededor de las líneas 707-712). Empieza reproduciendo una búsqueda de un mercado legacy como Gnosis con el interruptor desactivado y luego decide si las coincidencias legacy deberían mostrarse durante una consulta activa o solo contar para la comprobación del estado vacío. Está hecho cuando una consulta que solo coincide con un mercado legacy ya no muestra "No markets found" y el usuario puede ver la coincidencia o se le indica que active "Show legacy markets".

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Describe the bug

Searching for a legacy market in the market switcher renders "No markets found", even though the market exists and matches the query. Affects every market in the legacy category — Gnosis, Sonic, Scroll, Metis, ZKsync, Soneium, EtherFi — on any market/network.

The search filter itself works: the match is computed and lands in the legacy group. Two things then hide it:

  1. The legacy group is only rendered when the "Show legacy markets" switch is on (src/components/MarketSwitcher.tsx:707-712).
  2. noResults (src/components/MarketSwitcher.tsx:614-620) counts pinned, ethereum, l2, other, v4Ethereum and v4Other — but not legacy.

So when a query matches only legacy markets, every counted group is empty, noResults is true, and the empty state renders on top of a match that was found but not displayed.

// src/components/MarketSwitcher.tsx:614
const noResults =
  pinned.length === 0 &&
  ethereum.length === 0 &&
  l2.length === 0 &&
  other.length === 0 &&
  v4Ethereum.length === 0 &&
  v4Other.length === 0;   // legacy.length is never considered

This became user-visible for Gnosis and Sonic when #3111 moved them into the legacy category (MarketSwitcher.tsx:158-159); the showLegacy switch itself arrived with the v3 uplift (#3075).

To Reproduce

Steps to reproduce the behavior:

  1. Go to https://app.aave.com (any market)
  2. Open the market switcher in the header
  3. Leave "Show legacy markets" off (its default on every page load)
  4. Type Gnosis into the search box
  5. See "No markets found", although Gnosis exists and is selectable

Expected behavior

An explicit search should surface a matching market. Either show legacy matches whenever a search query is active, or at minimum stop reporting "No markets found" when legacy has matches — for example by including legacy.length in noResults and telling the user the matches are under "Show legacy markets".

Screenshots

n/a — reproducible from the source as described above.

Desktop (please complete the following information):

  • OS: any
  • Browser: any (not browser-specific)
  • Version: main @ 32cc548b9

Smartphone (please complete the following information):

  • Device: any
  • OS: any
  • Browser: any (the same code path renders the mobile sheet)
  • Version: main @ 32cc548b9

Additional context

Users holding positions in a legacy market are the ones most likely to search for it by name, so the empty-state message lands exactly on the people who need the market most. Happy to open a PR for this.

Lenguaje dominante
TypeScript
Estrellas
537
Forks
495
Merge medio
1 d 13 h
PR fusionados (30 d)
14

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de aave/interface

Todos los issues de aave/interface

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.