From 838f98b48bdb2e6fa97d8b6758b1138d8d04f585 Mon Sep 17 00:00:00 2001 From: kurihada Date: Thu, 26 Feb 2026 20:26:13 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=9B=B4=E6=96=B0=20BUGFIX.md=20?= =?UTF-8?q?=E6=A0=87=E8=AE=B0=20Low=20=E4=BC=98=E5=85=88=E7=BA=A7=20#27-#3?= =?UTF-8?q?1=20=E4=B8=BA=E5=B7=B2=E5=AE=8C=E6=88=90=EF=BC=8CBUGFIX.md=20?= =?UTF-8?q?=E5=85=A8=E9=83=A8=E6=B8=85=E9=9B=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BUGFIX.md | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/BUGFIX.md b/BUGFIX.md index ac5800b..e837f8f 100644 --- a/BUGFIX.md +++ b/BUGFIX.md @@ -109,25 +109,17 @@ ## Low — 可以改进 -- [ ] **#27 icon-only 按钮缺少 aria-label** - - 文件:`panic/page.tsx`、`blindbox/[code]/page.tsx`、`ShareCardModal.tsx` 等多处 - - 屏幕阅读器只报 "按钮" 无描述 +- [x] **#27 icon-only 按钮缺少 aria-label** ✅ + - panic/blindbox/ShareCardModal/AuthModal 中所有 icon-only 按钮补 aria-label -- [ ] **#28 AudioContext 每次 playChime() 新建** - - 文件:`src/lib/celebrate.ts` - - 浏览器限制并发 AudioContext 数量 (~6),快速重复触发可能静默失败 - - 修复:缓存复用单个 AudioContext +- [x] **#28 AudioContext 每次 playChime() 新建** ✅ + - 缓存复用单个 AudioContext,state === "closed" 时才重建 -- [ ] **#29 ApiError.name 是 "Error" 而非 "ApiError"** - - 文件:`src/lib/api.ts` - - 堆栈和日志中显示 `Error:` 而非 `ApiError:`,调试不便 - - 修复:构造函数加 `this.name = "ApiError"` +- [x] **#29 ApiError.name 是 "Error" 而非 "ApiError"** ✅ + - 已在 High 批次修复 -- [ ] **#30 blindbox lobby 加载房间失败静默无提示** - - 文件:`src/app/blindbox/page.tsx` - - catch 空处理,用户看到空列表以为没房间 +- [x] **#30 blindbox lobby 加载房间失败静默无提示** ✅ + - 新增 loadError state,失败时显示"加载失败 / 点击重试" -- [ ] **#31 theme localStorage 读取不校验合法值** - - 文件:`src/lib/theme.ts` - - 任意字符串被当作 Theme 使用 - - 修复:对比 `["light", "dark", "system"]` 白名单 +- [x] **#31 theme localStorage 读取不校验合法值** ✅ + - 已在 Critical 批次修复(VALID_THEMES 白名单校验)