## 供应商准入合规核验 {.case data-case-id="056"}

| 字段 | 值 |
| --- | --- |
| 案例编号 | `056` |
| 行业 / 部门 | 制造 / 采购合规 |
| 角色 | 合规负责人 |
| 难度 | `进阶` |
| 调用来源 | `manual`（供应商提交资料后由采购发起一次手动调用，带入资料安全引用——原始资质文件留在供应商门户或共享盘，不进入工作流） |

<!-- slot: 目标 -->
供应商资料收了一堆，资质过没过期、认证覆盖没覆盖、有没有上过黑名单，靠采购肉眼翻附件，漏一家就把风险带进供应链。目标：供应商提交资料后由采购发起一次手动调用，让获授权 Agent 逐项核对准入要件（资质、认证、黑名单比对）：齐全合规转准入评审并发回执；有缺项列缺失清单退回补充，判定不猜；命中黑名单或严重合规风险绝不自动通过、也绝不未经确认自动否决，强制人工确认（二值确认或驳回）由人看证据决定，转专项调查属于驳回后的线下动作。名称与商业条款脱敏：只用供应商标识与核验结论。指标：黑名单命中自动通过 0 例、未经确认自动否决 0 例；缺项判定一致率 ≥ 95%。

<!-- slot: 边界 -->
- **覆盖**：手动调用逐项核对要件（资质/认证/黑名单比对）、四路分流（齐全、缺项、红线命中、清单不完整）、红线强制人工确认、零结果与取数失败回执。
- **不覆盖**：自动通过或否决准入、自动联系供应商、自动比价评标、代评委会打分。
- **假设**：有一个经授权能读资质认证数据源、做黑名单比对并在读取侧脱敏的 Agent（通过 App/Extension）；调用输入只带资料安全引用（令牌），原始资质文件留在供应商门户或共享盘，App/Extension 凭引用抽取供应商标识、要件项与有效期等白名单字段；黑名单数据源只返回命中标识，不外带名单来源细节。

<!-- slot: 提示词 -->
把下面这段发给 Loop，它会在后台帮你创建这个 Workflow：

```text
帮我创建一个 Workflow：供应商提交资料后由采购发起一次手动调用，让获授权的核验 Agent 经 App/Extension 读取资质认证数据源并完成黑名单比对，App/Extension 在读取侧即完成脱敏，Agent 只接收供应商标识、要件项、核验结论与依据等白名单字段，真实名称与商业条款不进入 Agent 消息与运行记录。调用输入只带资料安全引用（令牌）：原始资质文件留在供应商门户或共享盘，由 App/Extension 凭引用抽取白名单字段（供应商标识、要件项、有效期），原件不进入工作流，Agent 凭引用逐项核对准入要件（资质、认证、黑名单比对）。供应商名称与商业条款脱敏：回执与通知只用供应商标识与核验结论，不外带真实名称与商业条款。
触发：手动发起调用，调用时带入资料安全引用（令牌）、合规频道、审批人与核验 Agent；引用缺供应商标识、要件项或有效期即输入不完整，告警新开调用不重试。
结果分流（按优先级从高到低依次判断，先判红线再判缺项）：
  触及红线（黑名单或严重合规风险命中）：强制进入人工确认，绝不自动通过、也绝不未经确认自动否决——这是最高优先级，命中即短路，不会落到下面的"有缺项"路径；审批为二值确认或驳回，不设自动超时，无默认通过/否决。审批人看证据（命中标识、要件项、依据与时间戳）后确认或驳回，结论留审计时间戳；确认后出处置通知，驳回则本次失败结束留审计。是否转专项调查属于驳回后的线下决策，由人在流程外发起，流程侧按驳回留审计，不设第三种审批结果。
  全部齐全合规：转准入评审（人工）并发回执（供应商标识、核验项数、依据与时间戳），留审计时间戳。
  有缺项：逐条列出缺失清单交采购，由采购退回供应商补充（工作流不自动联系供应商），缺失判定不猜（资料未提供就写"未提供"，判不了就标"待确认"），并留审计时间戳。
  输入清单不完整（资料安全引用缺供应商标识、要件项或有效期）：告警并留审计时间戳，通知采购补全后新开一次调用，本次不重试、不猜测缺失字段，也不改从门户拉原件。
另设两类边界结果：
  本期无待核验供应商（查询成功但安全引用指向的清单为空）：发一条"本期无待核验供应商"汇总回执并留时间戳，不静默结束。
  取数失败（资质认证或黑名单数据源不可达、数据陈旧）：告警失败、留审计时间戳，按重试上限重试，仍失败则升级到值班频道；不当作"本期无待核验供应商"，也不当作齐全合规。
审批：黑名单或严重合规风险命中必须经合规负责人确认后才出结论；审批为二值确认或驳回，不设自动超时，无默认通过/否决；是否转专项调查由人在驳回后线下决定，不属于审批结果。
异常：核验 Agent 回传不合结构就停在等待点等它重新提交，不自动重跑；通知发送失败按重试上限重试，仍失败则升级到值班频道并保留待发内容供人工补发。
完成：评审转交回执、退回补充通知、红线确认、清单不完整告警、零结果回执、取数失败升级，各自留审计时间戳后结束。
```

<!-- slot: 流程 -->
![案例 056 供应商准入合规核验：供应商提交资料后手动调用获授权 Agent 逐项核对准入要件（资质/认证/黑名单比对），调用输入只带资料安全引用（令牌），原始资质文件留在供应商门户或共享盘、App/Extension 凭引用抽取白名单字段；命中黑名单或严重合规风险触红线，强制人工确认（二值确认或驳回）、绝不自动通过也绝不未经确认自动否决，转专项调查属于驳回后线下动作；齐全合规转准入评审（人工）并发回执；有缺项列缺失清单退回补充、判定不猜；清单不完整告警留审计新开调用不重试；本期无待核验发零结果回执；数据源不可达按取数失败告警留审计重试升级；名称与商业条款脱敏；回传不合结构停在原等待点](../../../media/cases/fig-case-056-01-flow.svg){#fig-case-056-01 width=92%}

如上图所示，正常路径、人工决策与异常同时可见：

1. **手动触发**：供应商提交资料后由采购发起一次调用，带入资料安全引用（令牌，原始资质文件留在供应商门户或共享盘）、合规频道、审批人与核验 Agent。
2. **核验要件**：获授权 Agent 经 App/Extension 读资质认证数据源并做黑名单比对，App 在读取侧完成脱敏，Agent 只接收白名单字段，逐项核对回传结论依据；回传结构不合要求时停在原等待点，等其重新提交，不自动重跑。
3. **四路分流（先判红线再判缺项）**：
   - **触及红线**：黑名单或严重合规风险命中，强制人工确认，绝不自动通过、也绝不未经确认自动否决（红线是路由条件，不是仅返回的字段）；审批人看证据后确认或驳回，结论留审计时间戳；是否转专项调查由人在驳回后线下决定，流程侧按驳回留审计。
   - **齐全合规**：转准入评审（人工）并发回执，附供应商标识、核验项数、依据与时间戳留审计。
   - **有缺项**：逐条列缺失清单交采购，由采购退回供应商补充（工作流不自动联系供应商），判定不猜，留审计时间戳。
   - **输入清单不完整**：告警留审计，通知采购补全后新开调用，本次不重试。
4. **两类边界结果**：本期无待核验发零结果回执留时间戳；数据源不可达按取数失败告警留审计、按重试上限重试，仍失败升级值班频道。

<!-- slot: 配置 -->
你不需要手写代码或配置。把上面的提示词发给 Loop，AI 会理解意图、在后台画出这个"手动调用 + 红线强制人工 + 四路分流"流程——它知道"核验要件"需要一个发消息并等待回调的 Agent 环节、"先判红线再分流"需要一个条件路由且红线优先级最高、"人工确认"需要一个审批环节、"转评审与退回补充"各需要一个发消息环节。AI 还会校验流程完整性，不必关心这些技术细节。

<!-- slot: 异常 -->
- **黑名单命中被当成缺项退回**：这是最危险的漏判。因此红线设为最高优先级路由条件：命中即短路，强制人工确认，绝不自动通过，也绝不未经确认自动否决。
- **数据源不可达、陈旧**：不当作"本期无待核验"或齐全合规，而是告警留审计、按重试上限重试；仍失败升级值班频道。
- **缺项被猜出来**：未提供就写"未提供"，判不了就标"待确认"，不替供应商补资料，不替人下"其实有"的结论。
- **否决或放行**：两种结论都有效，均留审计；要重议就再发起一次确认，没有"AI 自动改判"。
- **输入清单不完整**：不猜缺失的标识、要件项或有效期，告警留审计并通知采购补全后新开调用，本次不重试。
- **通知发送失败**：按重试上限重试投递；超过上限升级值班频道，并保留待发内容供人工补发。
- **本期无待核验（结果为 0）**：仍发零结果回执留时间戳，让"没消息"变成可核验的记录。
- **核验 Agent 回传不合结构**：本次完成请求被拒绝，停在等待点等其修正后重新提交，不自动重跑。
- **长时间无人审批**：审批不设自动超时，流程停在等待状态。若需响应时限，由另一条定时检查的 Workflow 扫出超时项通知合规负责人。

<!-- slot: 审批 -->
黑名单或严重合规风险命中必须经合规负责人确认后才出结论，齐全转人工评审、缺项退回补充，均不打扰审批人。确认时能看到命中标识、要件项、依据与时间戳（名称与商业条款已脱敏），是"看证据后的决定"而非盲目拍板。审批为二值确认或驳回，不设自动超时，没有"超时默认通过"或"超时默认否决"；转专项调查不是审批的第三种结果，而是驳回后由人在线下发起的动作，流程侧按驳回留审计。若要更严（如需双签），在提示词里写明，AI 会多加一个审批环节。

<!-- slot: 外部系统 -->
资质认证数据源的读取与黑名单比对由获授权 Agent 通过 App/Extension 完成，工作流不直接调用外部系统，也不执行否决或拉黑等动作，只编排确认与通知。合规频道与审批人作为输入提供；数据源凭据用 `<token>` 占位，由 Agent 运行时从密钥引用。数据源不可达或陈旧属于取数失败，走失败回执与升级。最小披露：只用供应商标识与核验结论，不外带真实名称与商业条款。原始资质文件留在供应商门户或共享盘，凭资料安全引用（令牌）由 App/Extension 抽取白名单字段。进入 Agent 消息、Run/Activation/Effect 记录与 App/Extension 工具日志的字段以白名单为准（仅令牌化/白名单字段，原值不进入以上任何一层），真实名称与商业条款在源头即被脱敏，并按 10% 抽查四层实际记录。

<!-- slot: 验收 -->
- **回放集与基准**：取最近 6 个月 60 家供应商核验快照（含齐全、缺项、黑名单命中、严重风险、字段缺失样本）回放，基准为既定结论与应升级清单。
- **红线防线**：命中黑名单或严重风险的 100% 进入人工确认；自动通过 0 例、未经确认自动否决 0 例。
- **核验准确**：缺项判定一致率 ≥ 95%；齐全合规 100% 转评审发回执。
- **判定纪律**：缺失判定按 10% 抽样，猜测结论 0 次；"未提供"与"待确认"100% 分开标注；清单不完整 100% 告警留审计新开调用，0 次自动补猜。
- **脱敏**：按 10% 抽样，真实名称与商业条款出现 0 次。
- **源头脱敏**：原始资质文件 0 次进入工作流；进入 Agent 消息、Run/Activation/Effect 记录与 App/Extension 工具日志的字段 100% 在白名单内（仅令牌化/白名单字段，原值不进入以上任何一层），真实名称与商业条款出现 0 次，按 10% 抽查四层实际记录。
- **审批二值**：审批结果 100% 为确认或驳回，转专项调查 0 例由工作流自动发起，均由人在驳回后线下决定并留审计。
- **结果可见**：六类结果 100% 各有可见回执留审计，不出现静默成功；每次运行记录核验与通知时间戳。

### 复用与变体
- **同构迁移**：外包入场核验、代理商资质核验、数据商资质核验。
- **双签红线**：黑名单命中需合规与采购双签即可。
- **存续期复核**：把单次核验改为每季度对已准入供应商重跑，分流不变。

<!-- slot: 媒体槽位 -->
<!-- media: fig-case-056-01-flow.svg -->
