Skip to main content

挑战

在 monorepo 中,不同的包有不同的标准。React 前端关注组件模式,NestJS 后端关注依赖注入,共享库关注 API 稳定性。一刀切的审查行不通。

策略概述

Kodus 支持三个配置级别,自然映射到 monorepo:

步骤 1 — 映射您的包

识别 monorepo 中的不同区域及其审查需求:

步骤 2 — 创建目录级配置

在侧边栏中,打开 Code review 分组顶部的范围选择器,选择 Add repository configuration。在 Create repository settings 中,Select the target repository(即该 monorepo),然后 Select the target directories(一个或多个包文件夹),并点击 Create settings。每个目录都会以缩进形式显示在范围选择器中对应代码库的下方 — 选择它即可进行配置。 每个目录可以有自己的:
  • Kody 规则(文件级和 PR 级)
  • What to review(启用哪些类别,以及发布建议的最低严重性)
  • Ignored files(位于 General)

步骤 3 — 编写有针对性的规则

前端规则(范围:apps/web/)

后端规则(范围:apps/api/)

共享库规则(范围:libs/shared/)

步骤 4 — 使用记忆处理跨领域约定

某些约定适用于所有地方。将它们作为记忆教给 Kody:

步骤 5 — 按目录设置严重性阈值

高流量包可能需要更严格的过滤。在范围选择器中选择该目录,打开 What to review,并设置 Minimum severity to post:
  • apps/web/ — Medium(前端变化快)
  • libs/shared/ — Low/All(稳定性重要)
  • infra/ — High(少但关键)

步骤 6 — 忽略生成的路径

添加 monorepo 特定的忽略以避免噪音:

提示

  • 从每个目录 2-3 个规则开始,根据团队在审查中实际标记的内容进行扩展
  • 使用规则继承 — 组织级规则覆盖安全性,代码库级覆盖约定,目录级覆盖架构
  • 如果规则在一个包中触发过于频繁但在其他地方有效,从该规则中排除该目录而不是削弱规则
有关目录配置的更多信息,请参阅目录级配置。有关规则继承,请参阅规则继承。