Files
caiwuzongzhang/docs/issues/005-p1-import-api-hardening.md
T
2026-08-23 14:26:55 +08:00

35 lines
1.6 KiB
Markdown

⚠️ 本文档已过时,仅留档备查,请勿删除。该历史任务已落地;当前状态见 `../任务清单.md`
# [P1] 银行导入 API 加固与回归测试
## 背景
解析内核能识别现有六个样本,但 `/api/parse` 仍是最小原型:只返回第一个批次、手写 multipart、诊断边界不完整,也没有接口级测试。
## 范围
- API 返回所有成功工作表批次,而不是固定使用 `batches[0]`
- 未知模板诊断始终包含原始文件名、工作表名、扫描行数和候选表头;空表和单单元格行也有明确结果。
- 解析失败不得创建成功导入记录,临时文件名不得泄露。
- 使用成熟 multipart 处理方式,严格限制扩展名、大小、文件数量和资源消耗。
- 覆盖重复文件、损坏文件、无工作表、多工作表、歧义模板和余额异常。
- 每新增银行模板必须有脱敏 fixture 和回归测试。
## 验收标准
- [ ] 多工作表文件的每个批次都可确认、异常或忽略,不丢失成功工作表。
- [ ] 空工作簿、单单元格候选和未知表头错误都返回四项诊断证据。
- [ ] API 错误只显示原始上传文件名,不显示服务器临时路径。
- [ ] 损坏文件和超限请求返回稳定错误码,不产生已确认交易。
- [ ] 前端失败流程不增加导入成功行。
- [ ] `/api/parse` 有接口回归测试,包含现有工商银行样本。
## 测试
- 单元测试:候选摘要、空表、多表、歧义、余额异常。
- API 测试:原始文件名、multipart、大小限制、失败不建成功批次、全部批次返回。
## 依赖
Issue 002、004。