docs(regulatory-info-package): 更新材料包生成设计决策
This commit is contained in:
@@ -50,6 +50,8 @@ erDiagram
|
||||
|
||||
说明:`ra_workflow_node_run`、`ra_workflow_event`、`ra_exported_summary_file` 通过 `workflow_type` 与 `workflow_batch_id` 支持多工作流。本功能统一使用 `workflow_type=regulatory_info_package`。
|
||||
|
||||
现状补充:当前通用节点表已有 `batch + node_code` 唯一约束主要服务文件汇总批次。RIP 批次不应强依赖 `FileSummaryBatch.batch`,因此实现时必须为 `workflow_type + workflow_batch_id + node_code` 增加数据库唯一约束,或在创建节点时使用同等幂等逻辑,避免同一 RIP 批次重复初始化节点。
|
||||
|
||||
---
|
||||
|
||||
## 三、表结构设计
|
||||
@@ -211,6 +213,13 @@ erDiagram
|
||||
| node_group | regulatory_info_package |
|
||||
| batch_id | 可为空;如为兼容旧查询,不建议绑定文件汇总批次 |
|
||||
|
||||
幂等约束建议:
|
||||
|
||||
| 约束/策略 | 字段 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| uq_ra_node_workflow_batch_code | workflow_type, workflow_batch_id, node_code | 推荐新增数据库唯一约束,防止同一 RIP 批次重复节点 |
|
||||
| get_or_create 幂等 | workflow_type, workflow_batch_id, node_code | 若暂不改通用表约束,节点初始化必须使用该组合做代码层幂等 |
|
||||
|
||||
建议新增节点:
|
||||
|
||||
```text
|
||||
@@ -543,6 +552,7 @@ CREATE INDEX idx_ra_rip_batch_created
|
||||
| JSONField 默认值 | 使用 `default=list` 或 `default=dict`,禁止使用可变对象字面量 |
|
||||
| 外键删除策略 | conversation/user 使用 CASCADE;输入附件和文件汇总批次建议 PROTECT 或 SET_NULL,避免历史批次断链 |
|
||||
| `source_summary_item_id` | 当前没有强制外键到 `FileSummaryItem`,可先保存 ID,后续需要强约束时再改 FK |
|
||||
| 工作流节点幂等 | RIP 节点不得只依赖 `WorkflowNodeRun.batch + node_code` 唯一约束;必须使用 `workflow_type + workflow_batch_id + node_code` 保证幂等 |
|
||||
| `.doc` 失败记录 | `.doc` 原生适配器不可用或执行失败时必须写入 `risk_notes` 和 artifact metadata;若 `.docx` 兜底成功则 generated_files 状态为 `fallback_success` |
|
||||
| zip 主入口 | zip 导出记录的 `export_category` 固定为 `regulatory_info_package` |
|
||||
| 单文件下载 | 7 个生成文件也写入 `ExportedSummaryFile`,作为辅助下载 |
|
||||
@@ -562,8 +572,9 @@ CREATE INDEX idx_ra_rip_batch_created
|
||||
| 6 | zip 导出 | `ExportedSummaryFile` 支持 `export_type=zip` |
|
||||
| 7 | 下载权限 | 非批次所属用户不能下载 RIP 导出 |
|
||||
| 8 | 节点事件 | `WorkflowNodeRun` 和 `WorkflowEvent` 可通过 `workflow_type=regulatory_info_package` 查询 |
|
||||
| 9 | 通知记录 | 通知成功、失败和重试次数可落库 |
|
||||
| 10 | JSON 摘要 | 缺失项、LLM-only、冲突项、风险提示结构符合本文约定 |
|
||||
| 9 | 节点幂等 | 同一 `workflow_type + workflow_batch_id + node_code` 不会重复创建节点 |
|
||||
| 10 | 通知记录 | 通知成功、失败和重试次数可落库 |
|
||||
| 11 | JSON 摘要 | 缺失项、LLM-only、冲突项、风险提示结构符合本文约定 |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user