审计 — Servers 搜索手动触发与 null 修复
范围(文件清单)
| 文件 |
变更 |
frontend/src/composables/useServerSearchHistory.ts |
仅加载历史、不恢复 last;record null 安全 |
frontend/src/composables/useServerPagination.ts |
search null 安全 trim |
frontend/src/pages/ServersPage.vue |
searchDraft + 回车/下拉/清空才搜索 |
server/utils/validation_errors_zh.py |
422 剥离不可序列化 ctx |
Step 3 规则扫描
| H |
规则 |
结论 |
| H1 |
进页不自动过滤 |
PASS — refresh 重置 search |
| H2 |
无静默吞错 |
PASS — record/load 失败非阻塞 |
| H3 |
422 可 JSON 序列化 |
PASS — ctx 不写入响应 |
Closure
| H |
判定 |
依据 |
| H1 |
PASS |
loadHistoryOnly 不写 search |
| H2 |
PASS |
try/catch 保留 |
| H3 |
PASS |
translate_validation_errors |
DoD
验证
Servers 页进入 → 无搜索 chip;下拉选历史或回车 → 过滤;清空 → 全量。