docs(详细设计): 新增风险预警设计
This commit is contained in:
62
docs/详细设计/skill/风险归并Skill.md
Normal file
62
docs/详细设计/skill/风险归并Skill.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# 风险归并Skill 设计
|
||||
|
||||
## 1. Skill 定位
|
||||
|
||||
`风险归并Skill` 负责合并重复风险、关联同根因风险,并生成可排序的风险组。
|
||||
|
||||
英文实现标识建议使用 `RiskMergeSkill`。
|
||||
|
||||
## 2. 输入
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class RiskMergeInput:
|
||||
risk_items: list[RiskItem]
|
||||
```
|
||||
|
||||
## 3. 输出
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class RiskMergeOutput:
|
||||
merged_risk_items: list[RiskItem]
|
||||
risk_groups: list[RiskGroup]
|
||||
```
|
||||
|
||||
## 4. 核心方法
|
||||
|
||||
### 4.1 `run(input) -> RiskMergeOutput`
|
||||
|
||||
主入口方法。
|
||||
|
||||
### 4.2 `build_fingerprint(risk_item) -> str`
|
||||
|
||||
生成风险指纹。
|
||||
|
||||
### 4.3 `merge_duplicates(items) -> list[RiskItem]`
|
||||
|
||||
合并重复风险。
|
||||
|
||||
### 4.4 `link_related(items) -> list[RiskGroup]`
|
||||
|
||||
关联同根因风险。
|
||||
|
||||
## 5. 技术实现
|
||||
|
||||
使用技术:
|
||||
|
||||
1. Python 分组
|
||||
2. 风险指纹
|
||||
3. 关联规则
|
||||
|
||||
## 6. 异常处理
|
||||
|
||||
1. 风险项为空:返回空集合。
|
||||
2. 风险缺少关键字段:不合并并记录警告。
|
||||
|
||||
## 7. 测试要点
|
||||
|
||||
1. 重复风险可合并。
|
||||
2. 产品名称冲突和混档风险可关联。
|
||||
3. 空风险列表可处理。
|
||||
|
||||
Reference in New Issue
Block a user