fix(server-go): 巡检 roomId UUID 校验(400);文档更新

This commit is contained in:
weijuesen
2026-08-12 16:57:22 +08:00
parent 210bd6cefb
commit 22b6179c85
4 changed files with 75 additions and 0 deletions
+12
View File
@@ -107,6 +107,18 @@
- 第五次部署:`sers=1``seasonal=4``diseases=10`(含 other 类别);回滚点见服务器 README(原位旧二进制 `server-go-linux.old-20260812-7`
- 待办:专家经验沉淀(P1)依赖专家会诊(#18)落地,暂缓
### AI 巡检闭环后端(计划 #5 ai-service + #6 Go 对接)
- `ai-service/`(新增):FastAPI + ONNX Runtime 检测服务骨架——`POST /detect`multipart 图片 → 框/类别/置信度)、`GET /health``MockDetector`(默认,开发联调)+ `ONNXDetector``MODEL_MODE=onnx` 加载 `best.onnx`YOLOv8 后处理含 letterbox/NMS);pytest 6 个用例(TDD 红→绿)
- `server-go/internal/service/ai_client.go`(新增):AI 服务 HTTP 客户端(multipart 上传、超时、非 200/非法 JSON 报错),httptest 3 个用例
- `server-go/internal/model/inspection.go`(新增):`inspection_records` 表(图片 URL、检测结果 jsonb、风险字段预留、`idempotency_key` 唯一索引)
- `server-go/internal/handler/inspection.go`(新增):`POST/GET /api/v1/inspections`——图片存 S3`silk-images/inspections/…`)→ 调 AI `/detect` → 写记录;**`Idempotency-Key` 头幂等**(重复请求返回已有记录,并发冲突兜底);`roomId` 非 UUID 返回 400
- 权限:新增 `inspection:create`farmer/admin/operator)、`inspection:read`(全角色读)
- 配置:`AI_SERVICE_BASE`(默认 `http://localhost:8000`);`.gitignore` 增加 ai-service Python 文件例外(原全局 `*.py` 规则)
- 部署:ai-service 部署至开发服务器 `/home/pan/ai-service`:8000mock 模式,`start.sh` 启动;服务器补装 `python3.10-venv`,pip 走清华镜像);Go 后端第六次部署(schema 变更前 pg_dump `silk-20260812-1635.dump`
- 验证:ai-service 服务器 pytest 6/6;巡检冒烟——创建 201mock 检测 healthy/0.95)→ 同 key 重试返回同记录 → 列表 1 条 → 图片 URL 200;非法 roomId 400
- 回滚点:Go 旧二进制 `server-go-linux.old-20260812-9`ai-service 停 uvicorn 即可;记录见服务器 README
## 2026-07-17 安全与界面优化整改
### 变更背景