贴一段 diff,得到按 CRITICAL/HIGH/MEDIUM/LOW 分级、聚焦真问题的代码评审。

0Stars0Fork0Copies

Prompt

Preview

Artifacts

1 artifacts

CRITICAL

无。

HIGH

  • 问题:删除接口只校验登录态,没有校验资源 owner。
  • 位置app/api/projects/[id]/route.ts DELETE
  • 为什么:任意登录用户只要猜到 id 就可能删除他人项目,属于越权写。
  • 建议:在删除前查询项目 owner,并在不匹配时返回 404。

MEDIUM

  • 问题:列表接口未限制分页大小。
  • 位置server/repositories/project.ts listProjects
  • 为什么:大账号或恶意请求会触发无界查询,影响数据库稳定性。
  • 建议:对 limit 设置上限,例如 100,并提供默认值。

LOW

无。

合并前必须先处理的项

  • 补上删除接口 owner 校验。
  • 给列表查询加分页上限和测试。

README

README.md

代码评审助手

git diff 粘进来,输出按严重级别分组的评审意见,每条给「问题→为什么是问题→建议改法(可附代码)」。聚焦安全、正确性、错误处理、性能,刻意忽略无关的风格洁癖。