返回 Bug 清单
BUG-0318project-45高待处理unknown

FastAPI 路由注册顺序:PUT /v1/genes/{gene_id} 遮蔽 PUT /v1/genes/score —— 'score' 被当 UUID 解析 500

发现:2026-10-01验证:2026-10-09置信度:70%

症状

PUT /v1/genes/score 请求被 {gene_id} 路由捕获,'score' 按 UUID 强转失败返回 500

根因

FastAPI 按注册顺序匹配路由:L494 的 PUT /v1/genes/{gene_id} 先于 L1496 的 PUT /v1/genes/score 注册,静态段 score 永远被动态参数抢先吃掉

修复方案

评分接口改成 POST /v1/genes/score(批量写入语义上也更贴切),从根上避开与路径参数路由的冲突

错误签名

PUT /v1/genes/score 路径参数 gene_id UUID cast 失败 500 FastAPI 路由注册顺序

技术信息

来源项目

project-45

标签

project-45, mcp-reported