Files
DEMO-AGENT/docs/详细设计/skill/审核范围确认Skill.md

1.7 KiB

审核范围确认Skill 设计

1. Skill 定位

审核范围确认Skill 负责确认本次一致性核查的文档范围,避免把不同项目、不同产品或法规依据资料混入同一轮比对。

英文实现标识建议使用 ReviewScopeResolveSkill

2. 输入

@dataclass
class ReviewScopeResolveInput:
    batch_id: int
    documents: list[DocumentFact]
    selected_document_ids: list[int] = field(default_factory=list)

3. 输出

@dataclass
class ReviewScopeResolveOutput:
    scope_documents: list[DocumentFact]
    excluded_documents: list[dict]
    scope_warnings: list[dict]
    scope_status: str

4. 范围规则

  1. 必须同一批次。
  2. 必须是业务申报资料。
  3. 法规资料排除。
  4. 处理失败资料排除。
  5. 待人工复核资料保留但标记警告。
  6. 用户选中范围优先。

5. 核心方法

5.1 run(input) -> ReviewScopeResolveOutput

主入口方法。

5.2 filter_by_selected_documents(documents, ids) -> list[DocumentFact]

根据用户选择过滤文档。

5.3 exclude_non_submission_documents(documents) -> list[dict]

排除法规资料和非业务资料。

5.4 build_scope_warnings(documents) -> list[dict]

生成范围警告。

6. 技术实现

使用技术:

  1. 文档主数据
  2. Django ORM
  3. 资料来源角色枚举

7. 异常处理

  1. 范围为空:任务不可执行。
  2. 只有单个文档:允许执行,但只能输出单来源结果。
  3. 全部文档待复核:输出低可信警告。

8. 测试要点

  1. 选中文档范围生效。
  2. 法规资料被排除。
  3. 待复核文档输出警告。
  4. 空范围返回错误。