1.9 KiB
1.9 KiB
ADDED Requirements
Requirement: target 分组配置
系统 SHALL 支持在每个 target 上配置可选的 group 字段,用于将目标归类到不同分组。未指定 group 的 target SHALL 归入 "default" 分组。
Scenario: 配置分组名称
- WHEN YAML 配置中某个 target 指定
group: "搜索引擎" - THEN 系统 SHALL 将该 target 归类到 "搜索引擎" 分组
Scenario: 不配置分组
- WHEN YAML 配置中某个 target 未指定
group字段 - THEN 系统 SHALL 将该 target 归类到 "default" 分组
Scenario: group 字段类型校验
- WHEN YAML 配置中某个 target 的
group字段不是字符串 - THEN 系统 SHALL 以错误退出并提示 group 字段类型错误
Requirement: 分组排序
系统 SHALL 保证 "default" 分组始终排在最前面,其余分组按配置文件中首次出现的顺序排列。
Scenario: default 分组排最前
- WHEN 配置中存在多个分组(包括 "default" 和自定义分组)
- THEN API 返回的目标列表中 "default" 分组的目标 SHALL 排在其他分组之前
Scenario: 自定义分组按出现顺序
- WHEN 配置中 "搜索引擎" 分组在 "后端服务" 分组之前首次出现
- THEN API 返回中 "搜索引擎" 分组 SHALL 排在 "后端服务" 分组之前
Requirement: 分组信息 API 传递
系统 SHALL 在 API 响应中返回每个 target 的分组信息。
Scenario: targets 列表包含分组
- WHEN 客户端请求
GET /api/targets - THEN 响应中每个目标 SHALL 包含
group字段,值为该目标所属的分组名称
Requirement: 分组存储
系统 SHALL 在数据库 targets 表中持久化每个 target 的分组信息。
Scenario: 持久化分组信息
- WHEN 系统同步 targets 到数据库
- THEN 每个 target 的
grp列 SHALL 存储其分组名称,未配置分组的存储"default"