# ============================================================
# 类变更检测配置
# 由 CI 流水线加载；jar 位于 .gitea/workflows/class-checker.jar
# 修改后 push 即可生效，无需重新打包 jar（除非改动了 Java 源码）
# ============================================================

# 总开关。false 时跳过全部检测，流水线直接成功退出
class_check:
  enabled: true

  # Dto → Entity 类转换影响检测开关
  # true：分析 Dto 变更是否通过 convert() 或 BeanUtils.copyProperties 影响到 Entity
  # false：通知中「② 类转换影响」段落显示「未开启检测」
  dto_entity_conversion:
    enabled: false

  # 模型类源码目录（相对仓库根路径，可配置多个）
  # 用于声明 Vo/Dto/Entity/Model 所在模块；当前版本按 git diff 全仓库扫描，
  # 类名须以 Dto、Vo、VO、Entity、Model 结尾才会纳入检测
  model_dirs:
    - jnpf-ftb/jnpf-ftb-entity/src/main/java

  # 接口索引扫描目录，用于分析类变更对 API 的影响范围
  endpoint_scan:
    controllers:
      # Spring @RestController / @Controller 所在目录
      # 解析 @RequestMapping 等注解，建立「HTTP 方法 + 路径 → 入参/返回值类型」索引
      - jnpf-ftb/jnpf-ftb-biz/src/main/java
    feign_apis:
      # OpenFeign @FeignClient 接口所在目录
      # 解析 Feign 接口方法签名，补充远程调用端的影响范围
      - jnpf-ftb/jnpf-ftb-api/src/main/java

  conversion_scan:
    # Dto → Entity 转换代码扫描目录（相对仓库根路径，可配置多个）
    # 在这些目录中搜索 BeanUtils.copyProperties(source, target) 等调用，
    # 判断哪些 Entity 会因 Dto 字段变更而受影响
    - jnpf-ftb/jnpf-ftb-biz/src/main/java

# 企业微信通知开关   # false：不发送企微，完整通知内容仅打印到 CI 日志
wecom:
  enabled: true
  webhook_url: "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=61f08cc9-b734-4dff-a931-7f33654c0a81"

# true：无变更时打印「无类变更，静默退出」后正常结束（不发送通知）
notify:
  only_on_change: true
