优化批次统计查询并统一评分反馈与复核刷新 #3

Merged
SkyLiCoder merged 6 commits from aerospaceboy/WiseGrade:improve/grading-feedback into main 2026-10-18 15:30:39 +08:00
Contributor

批次列表此前为每个批次单独查询评分统计,批次增多后刷新开销随之增长;导出反馈与网页的失败状态名称不一致,教师保存最后一项复核后页面还可能保留旧批次状态。本 PR 将状态统计合并为一次聚合,统一失败分类,并同步刷新批次与评分,保留当前筛选。

改动:

  • 20批次回归场景从21次查询降至2次;真实8批次列表从9次降至2次,字段、顺序和空计数保持一致。
  • API、聊天、反馈报告共用失败状态名称。连接/超时/HTTP原因不会被通用JSON错误包装误判;网页优先使用API分类,并保留对简化结果的兼容。
  • 新增“刷新评分”。保存复核后刷新批次状态和分数;保持当前筛选,教师零分正常显示,旧学生迟到响应不会覆盖新选择。

验证:

  • 独立PostgreSQL/Redis环境的完整非integration后端测试154项通过,2项未运行。
  • Playwright 22项通过;TypeScript/Vite构建通过。
  • Docker实际网页刷新与筛选验证通过;无业务写请求、无模型调用。
  • 第8批次22项评分响应排除新增展示字段status_label后,更新前后SHA-256一致。

共6个小提交,每个1–3文件。验证记录见 docs/GRADING_FEEDBACK_OPTIMIZATION_2026-10-18.md。

批次列表此前为每个批次单独查询评分统计,批次增多后刷新开销随之增长;导出反馈与网页的失败状态名称不一致,教师保存最后一项复核后页面还可能保留旧批次状态。本 PR 将状态统计合并为一次聚合,统一失败分类,并同步刷新批次与评分,保留当前筛选。 改动: - 20批次回归场景从21次查询降至2次;真实8批次列表从9次降至2次,字段、顺序和空计数保持一致。 - API、聊天、反馈报告共用失败状态名称。连接/超时/HTTP原因不会被通用JSON错误包装误判;网页优先使用API分类,并保留对简化结果的兼容。 - 新增“刷新评分”。保存复核后刷新批次状态和分数;保持当前筛选,教师零分正常显示,旧学生迟到响应不会覆盖新选择。 验证: - 独立PostgreSQL/Redis环境的完整非integration后端测试154项通过,2项未运行。 - Playwright 22项通过;TypeScript/Vite构建通过。 - Docker实际网页刷新与筛选验证通过;无业务写请求、无模型调用。 - 第8批次22项评分响应排除新增展示字段status_label后,更新前后SHA-256一致。 共6个小提交,每个1–3文件。验证记录见 docs/GRADING_FEEDBACK_OPTIMIZATION_2026-10-18.md。
aerospaceboy added 6 commits 2026-10-18 12:26:02 +08:00
SkyLiCoder approved these changes 2026-10-18 15:30:30 +08:00
SkyLiCoder merged commit a2eb20e797 into main 2026-10-18 15:30:39 +08:00
SkyLiCoder deleted branch improve/grading-feedback 2026-10-18 15:30:39 +08:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SkyLiCoder/WiseGrade#3