criticalFieldPatterns 选择 → ResponseGuard

criticalFieldPatterns 选择 → ResponseGuard 由 Archify 生成的架构图。 ALL_PATTERNS · salary · leave_days · headcount · 代码 Registry → 按工具过滤 · 非 DB · extract 在代码 ALL_PATTERNS salary · leave_days · headcount 非 DB · extract 在代码 availableToolNames · rawTools + writeToolPool · 代码 Registry → 按工具过滤 · map(t => t.name) availableToolNames rawTools + writeToolPool map(t => t.name) selectCriticalFieldsForAgent · sourceTools ∩ tools · 代码 Registry → 按工具过滤 · ADR-0018 §5 selectCriticalFieldsForAgent sourceTools ∩ tools ADR-0018 §5 capabilityCriticalFieldPatterns · capability-policy 附加 · 代码 Registry → 按工具过滤 · e.g. get_recruit_funnel capabilityCriticalFieldPatterns capability-policy 附加 e.g. get_recruit_funnel resolveAgentPipeline · 产出 patterns · TurnConfig → ResponseGuard 消费 · per turn resolveAgentPipeline 产出 patterns per turn TurnConfig.criticalFieldPatterns · composeDeps 透传 · TurnConfig → ResponseGuard 消费 · IN TurnConfig TurnConfig.criticalFieldPatterns composeDeps 透传 IN TurnConfig ResponseGuard · DefaultResponseGuard · TurnConfig → ResponseGuard 消费 · length>0 ResponseGuard DefaultResponseGuard length>0 verify · text · toolResults · patterns · TurnConfig → ResponseGuard 消费 · 溯源数值 verify text · toolResults · patterns 溯源数值 旧:index.ts 全局 · 过度触发 VMS/BI · 架构组件 · 已替换 旧:index.ts 全局 过度触发 VMS/BI 已替换 ALL_PATTERNS ∩ sourceTools plus 返回 patterns 写入 TurnConfig criticalFieldPatterns verify(…) 已替换 代码 Registry → 按工具过滤 TurnConfig → ResponseGuard 消费 图例 后端 云服务 安全 外部系统

选择规则

  • • pattern 仅当 sourceTools ∩ availableToolNames 非空
  • • 再并上 capabilityCriticalFieldPatterns(names)
  • • extract 函数不可序列化 → 留在代码,不进 agent DB

写入路径

  • • resolveAgentPipeline:selectCriticalFieldsForAgent([...rawTools, ...writeToolPool].map(name))
  • • 结果 → TurnConfig.criticalFieldPatterns → composeDeps 透传
  • • 替换旧 index.ts 全局挂载,避免 VMS/BI 过触发

ResponseGuard 消费

  • • shouldRunGuard = responseGuard && criticalFieldPatterns.length > 0
  • • verify(assistantText, accumulatedToolResults, criticalFieldPatterns)
  • • 按 pattern.sourceTools 取工具返回值,校验回复数值可溯源