Files
zclaw_openfang/docs/test-results/2026-04-09-exploratory/bug-tracker.md
iven 448b89e682
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
test: complete storyline-1 results (1.5-1.8) + BUG-008 tracker update
- 1.5 PASS: policy compliance check with 6-clause analysis + PPT outline
- 1.6 PASS: BUG-008 fix verified, AI correctly references prior context
- 1.7 PARTIAL: NlScheduleParser not triggered in SaaS Relay mode
- 1.8 NOT TESTED: requires physical network disconnect
2026-04-09 22:56:25 +08:00

2.4 KiB

Bug 跟踪汇总

日期: 2026-04-09 来源: 预发布探索性测试 (4条故事线 + 模块矩阵)

Bug ID 场景 严重度 标题 状态 修复提交
BUG-001 Relay 全场景 P0 SaaS Relay DATABASE_ERROR: SUM(token_count) 返回 NUMERIC 而非 bigint FIXED bd6cf8e
BUG-002 场景1.2 P2 旧对话错误消息缓存: 修复后刷新页面旧错误仍显示,需点"重试"或新建对话 WONTFIX
BUG-003 启动 P1 saasStore.ts fetchAvailableModels 使用 require() 导致模型同步失败 FIXED require → await import
BUG-004 Health P1 Health check 连接池使用率公式错误 (max-idle 而非 size-idle) FIXED pool.size() 替代 max_connections
BUG-005 启动 P2 OfflineStore 无模型配置时重连循环过于频繁 KNOWN 首次启动预期行为
BUG-006 启动 P2 WebMCP 注册失败 TypeError: Required member is undefined KNOWN 需 Chrome 146+ flag
BUG-007 Admin P2 Admin V2 authStore 测试 19 个失败 (113 passed) OPEN 测试代码与实现不同步
BUG-008 场景1.6 P1 SaaS Relay 模式只发送当前消息,不发送对话历史 (无上下文记忆) FIXED 9442471

BUG-001 详细

根因: PostgreSQL SUM(bigint) 返回 NUMERIC 类型,但 sqlx Rust 绑定期望 i64 (INT8)。key_pool.rsselect_best_key() 查询中 COALESCE(SUM(uw.token_count), 0) 缺少 ::bigint 转换。

影响: 所有 SaaS Relay 聊天请求 100% 失败,返回 500 DATABASE_ERROR

修复: 4 处 SUM() 添加 ::bigint 转换:

  • relay/key_pool.rs — 根因
  • relay/service.rs — sort_candidates_by_quota
  • account/handlers.rs — dashboard stats
  • workers/aggregate_usage.rs — usage aggregation

BUG-002 详细

现象: 修复 BUG-001 后刷新页面,旧对话仍显示 "Relay error: 500 DATABASE_ERROR"。需手动点"重试"或新建对话才能恢复正常。

原因: 前端 IndexedDB 缓存了历史错误消息,刷新不会自动清除。

决定: WONTFIX — 这是预期行为(保留历史消息真实性),用户可通过"重试"恢复。

测试通过场景

场景 结果 备注
1.2 首次对话 (医务科) PASS Relay 完整链路: Desktop→SaaS→Key Pool→kimi-for-coding
离线队列恢复 PASS "已恢复连接, 发送中 4 条" 自动重发