# 字段抽取报告生成Skill 设计 ## 1. Skill 定位 `字段抽取报告生成Skill` 负责将字段池写入结果组装成稳定的 `registration_field_extraction_report`,并生成页面展示、审计和飞书摘要所需的数据结构。 英文实现标识建议使用 `FieldExtractionReportBuildSkill`。 ## 2. 输入 ```python @dataclass class FieldExtractionReportBuildInput: context: FieldExtractionContext field_pool_items: list[FieldPoolItem] manual_review_fields: list[dict] tool_calls: list[dict] ``` ## 3. 输出 ```python @dataclass class FieldExtractionReportBuildOutput: report: dict display_sections: list[dict] audit_payload: dict feishu_summary_payload: dict ``` ## 4. 报告结构 报告必须包含: 1. `report_type` 2. `batch_id` 3. `field_schema_id` 4. `field_schema_version` 5. `summary` 6. `field_pool_items` 7. `manual_review_fields` 8. `evidence_refs` 9. `tool_calls` ## 5. 核心方法 ### 5.1 `run(input) -> FieldExtractionReportBuildOutput` 主入口方法。 ### 5.2 `build_summary(field_pool_items) -> dict` 汇总字段数量、已抽取数量、待复核数量和冲突候选数量。 ### 5.3 `build_field_rows(field_pool_items) -> list[dict]` 生成字段池页面表格。 ### 5.4 `build_audit_payload(report, context) -> dict` 生成审计载荷。 ### 5.5 `build_feishu_summary_payload(report) -> dict` 生成飞书摘要载荷。 ## 6. 技术实现 使用技术: 1. dataclass/Pydantic 2. JSONField 3. Audit 服务 4. 页面展示 schema ## 7. 异常处理 1. 字段池为空:输出空报告并提示无可用字段。 2. 报告字段缺失:任务失败。 3. 审计写入失败:报告仍返回,但记录系统警告。 4. 飞书摘要构建失败:不影响 Web 报告。 ## 8. 测试要点 1. 输出 schema 稳定。 2. 字段池行展示完整。 3. 审计载荷包含字段 schema 版本。 4. 飞书摘要不包含敏感信息。