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

Global asset view reports failures and unmatched searches as an empty cache

Abierto
#4,385 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@kohjunhao ya está trabajando en esto.

Desde el 2/10/2026.

  • #4394 de @lorenzozanee — cerrado sin fusionar
  • #4903 de @kohjunhao — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
68/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
typescript

Línea de trabajo

Read packages/studio/AGENTS.md, then inspect the request and filtered-empty branches in packages/studio/src/components/sidebar/GlobalAssetsView.tsx and its caller in AssetsTab.tsx. Run bun run --cwd packages/studio test and add component coverage for loading, failures, retries, empty results, unmatched searches, recovery, and unmount behavior. Done means each state has distinct messaging while existing rows and filtering remain intact.

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

Descripción

bug difficulty/easy triage/ready

Studio's global asset list reports “No assets in the global cache yet” for three different situations: an actual empty cache, a failed request, and a search that matches none of the existing assets. This tells users that their cache is empty when the data is unavailable or merely filtered out.

Reproduction and evidence

Verified against origin/main 86fa10ced4297bfd9f4fe67b6767afae7a07fd3c on September 23, 2026. Relevant source is unchanged from the browser probe.

In Studio's Assets panel, select the global asset view:

  1. Return HTTP 500 from /api/assets/global, or reject that request. The view displays the empty-cache message.
  2. Return { "assets": [{ "id": "logo", "type": "image", "description": "Brand logo" }] } successfully and search for zzz. The view again displays the empty-cache message.
  3. Clear the query. The existing Brand logo row reappears.

All these cases were executed in Chrome with the actual GlobalAssetsView component and mocked fetch responses. A successful response containing zero assets was also checked and currently displays the same message. This is an isolated component reproduction; the Assets panel caller was inspected in source rather than exercised through the complete application.

Scope

Represent loading, request failure, empty successful result, and no matching search results separately. Offer a retry for request failures using the existing endpoint. Preserve the current asset rows and filtering behavior.

Acceptance criteria
  • A non-OK response or rejected request displays a failure message rather than an empty-cache explanation.
  • Retrying a failed request can recover to a populated or genuinely empty result; there is no automatic retry loop.
  • A successful empty response displays the existing empty-cache guidance.
  • When the cache contains records but the query matches none, the view says there are no matching results.
  • Clearing the query restores the existing records without requiring another request.
  • Loading remains identifiable, and a response arriving after unmount does not update the disposed view.
  • Component tests cover these states and recovery using controlled fetch responses.
Code pointers and validation

Difficulty: easy — bounded component state and rendering behavior. Before starting, check current assignments and linked PRs. Open UI migration PRs #3625, #3626, #3774 and #3776 make only a CSS-class change in this component; their inspected patches do not address these states.

Reviewer/mentor is being arranged. Comment with your intended approach before starting so ownership can be coordinated; this issue is not yet a newcomer invitation.

Lenguaje dominante
TypeScript
Estrellas
54.1k
Forks
4.9k
Merge medio
7 h 2 min
PR fusionados (30 d)
782

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

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 heygen-com/hyperframes

Todos los issues de heygen-com/hyperframes

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.