Global asset view reports failures and unmatched searches as an empty cache
维护者通常 1 天内回复
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 68/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- typescript
- 领域
- frontend, testing-qa
调研方向
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.
由索引模型根据 Issue 内容生成。
描述
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:
- Return HTTP 500 from
/api/assets/global, or reject that request. The view displays the empty-cache message. - Return
{ "assets": [{ "id": "logo", "type": "image", "description": "Brand logo" }] }successfully and search forzzz. The view again displays the empty-cache message. - Clear the query. The existing
Brand logorow 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
- GlobalAssetsView request and state handling
- GlobalAssetsView filtered-empty branch
- Assets panel caller
- Read
packages/studio/AGENTS.md; usebun run --cwd packages/studio testfor Studio's Vitest tests.
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.
- 主要语言
- TypeScript
- 星标
- 54.1k
- 派生
- 4.9k
- 平均合并
- 7 小时 18 分钟
- 30 天内合并 PR
- 784
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
heygen-com/hyperframes 的其他 Issue
-
Docs: clarify that "Enable auto-update" is only available in the Claude Code terminal (CLI) /plugin UI可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 85/100
heygen-com/hyperframes#5027 ·
维护者通常 1 天内回复
-
fix(producer): propagate useGpu to HDR layered streaming encoder可能已有人在做 @Monster-GM 于 2 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 87/100
heygen-com/hyperframes#5002 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
heygen-com/hyperframes#4702 · 1 条评论 · 1 个 reaction ·
维护者通常 1 天内回复
-
Studio catalog prompt editor has no accessible name可能已有人在做 @lorenzozanee 于 12 天前认领。 未关闭bug difficulty/easy triage/ready
难度 2/5 1-3 小时 新手友好度 78/100
heygen-com/hyperframes#4384 ·
维护者通常 1 天内回复
-
lint: validate composition variables declared on supported root elements可能重新可做 关联的 PR 已关闭且未合并。 未关闭bug difficulty/easy triage/ready
难度 2/5 1-3 小时 新手友好度 88/100
heygen-com/hyperframes#4383 ·
维护者通常 1 天内回复
查看 heygen-com/hyperframes 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 85/100
Comfy-Org/ComfyUI_frontend#20346 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 90/100
decentralized-identity/didwebvh-ts#203 ·
维护者通常 1 天内回复
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
难度 2/5 1-3 小时 新手友好度 65/100
lingdojo/kana-dojo#31791 · 1 条评论 · 5 个 reaction ·
维护者通常 1 天内回复
-
Telegram webhook: line breaks lost since switch to rich messages可能已有人在做 @Kshot3000 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
github_actions security
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复