2.5 KiB
2.5 KiB
完整性报告生成Skill 设计
1. Skill 定位
完整性报告生成Skill 负责把完整性检查链路中的规则判定结果、风险映射结果和法规证据组装成稳定的 registration_completeness_report。
英文实现标识建议使用 CompletenessReportBuildSkill。
本 Skill 不重新判定缺失,不重新检索证据,只负责报告结构、展示摘要和审计载荷生成。
2. 输入
@dataclass
class CompletenessReportBuildInput:
execution_context: CompletenessExecutionContext
item_results: list[CompletenessItemResult]
evidence_refs: list[EvidenceRef]
pass_status: str
highest_risk_level: str
3. 输出
@dataclass
class CompletenessReportBuildOutput:
report: dict
display_sections: list[dict]
audit_payload: dict
feishu_summary_payload: dict
4. 报告结构
报告必须包含:
report_typebatch_idworkflow_typerule_package_idrule_versionchapter_scopesummarymatched_itemsmissing_itemsmisplaced_itemsmanual_review_itemsevidence_refssuggestions
5. 核心方法
5.1 run(input) -> CompletenessReportBuildOutput
主入口方法。
5.2 build_summary(item_results) -> dict
汇总:
- 要求项数量。
- 已提供数量。
- 缺失数量。
- 疑似提供数量。
- 错放数量。
- 待复核数量。
- 最高风险等级。
- 是否通过。
5.3 split_item_results(item_results) -> dict
按状态拆分明细。
5.4 attach_evidence(item_results, evidence_refs) -> list[dict]
把法规证据挂到对应要求项。
5.5 build_display_sections(report) -> list[dict]
生成页面展示区块。
5.6 build_audit_payload(report, context) -> dict
生成审计载荷。
5.7 build_feishu_summary_payload(report) -> dict
生成飞书摘要载荷,供后续飞书通知步骤复用。
6. 技术实现
使用技术:
- Pydantic/dataclass
- JSONField
- Django Audit 服务层
- 结构化消息模板
7. 异常处理
- 报告字段缺失:构建失败并写入失败审计。
- 证据为空:正常输出,标记证据缺失。
- 明细为空:输出空检查结果。
- 风险等级缺失:按
low处理,并记录规则警告。
8. 测试要点
- 输出 schema 字段稳定。
- 缺失项进入
missing_items。 - 错放项进入
misplaced_items。 - 待复核项进入
manual_review_items。 - 审计载荷包含规则版本和输入范围。
- 飞书摘要载荷不包含敏感信息。