# 强一致规则加载Skill 设计

## 1. Skill 定位

`强一致规则加载Skill` 负责加载字段一致性核查规则，定义哪些字段必须完全一致、如何比对、冲突风险等级和是否参与回填拦截。

英文实现标识建议使用 `StrictConsistencyRuleLoadSkill`。

## 2. 输入

```python
@dataclass
class StrictConsistencyRuleLoadInput:
    field_rule_id: str
    target_field_keys: list[str] = field(default_factory=list)
    strict_mode: bool = True
```

## 3. 输出

```python
@dataclass
class StrictConsistencyRuleLoadOutput:
    field_rule_id: str
    version: str
    rules: list[ConsistencyFieldRule]
    validation_warnings: list[dict]
```

## 4. 核心方法

### 4.1 `run(input) -> StrictConsistencyRuleLoadOutput`

主入口方法。

### 4.2 `load_rule_file(field_rule_id) -> dict`

读取 YAML 规则。

### 4.3 `validate_rules(raw_rules) -> RuleValidationResult`

校验规则字段。

### 4.4 `select_target_rules(rules, target_field_keys) -> list[ConsistencyFieldRule]`

筛选本次目标字段规则。

## 5. 技术实现

使用技术：

1. YAML
2. Pydantic
3. Django cache

建议路径：

```text
configs/registration/consistency/ivd_strict_consistency_v1.yaml
```

## 6. 异常处理

1. 规则文件不存在：任务失败。
2. 目标字段无规则：标记不检查。
3. 风险等级缺失：默认中风险并记录警告。

## 7. 测试要点

1. 规则加载成功。
2. 目标字段筛选正确。
3. 缺少规则时报错。
4. `strict_mode` 生效。

