diff --git a/docs/agent-architecture.md b/docs/agent-architecture.md index 06c9a7f..2c316c6 100644 --- a/docs/agent-architecture.md +++ b/docs/agent-architecture.md @@ -90,10 +90,13 @@ ## 10. 写入闭环与暂存表 -**ProposeWrite 是单一写工具**(不拆 copyto/报价)。区别只在**ERP 侧执行策略**(目标表单的一个标志位): -- **copyto**:双确认 —— ① 对话内 diff 确认 → ② 落暂存 + 返回 ERP 链接 → ③ 用户进 ERP 原生表单再确认 → ④ ERP 执行器执行。 -- **报价**:ERP 侧**自动执行** —— ① 对话内 diff 确认 → ② 落暂存 → ④ ERP 自动执行(`Sp_Ai_AddQuoQuoAfter` 定价),**无需第二次 ERP 确认**。对用户 UX 统一。 -- 报价的 13–25 分组/动态参数收集复杂度在**参数收集阶段**(AskUser + 可选"报价 Skill" playbook),不在写工具里。 +**ProposeWrite 是单一写工具**(不拆 copyto/报价)。**agent 侧写入流程对所有写统一**: +``` +收集参数(FormCollect/AskUser/读行) → ProposeWrite 对话内【最终确认】 → 落暂存 sp_ai_addcommonwx +``` +- 报价即使已用 FormCollect 填完表单,**落暂存前仍要一份对话内最终确认**(确认 = 允许存起来的门)。 +- 落暂存后是 **ERP 的事、与 agent 无关**:ERP 对不同待办的策略(报价自动执行 `Sp_Ai_AddQuoQuoAfter` / copyto 让用户在 ERP 原生表单再确认→执行器执行)都在暂存之后。 +- **ProposeWrite 泛化为"提议任意变更动作"**:ERP 按钮动作(审核/过账/生成 等**写按钮**)也走这道确认门;只读按钮(查询/导出)归 Read。⚠️ 绝不给 agent 一条绕过确认门直接触发 ERP 写动作的路(后端权限只管"能不能做",不等于"这次同意做")。是否需要独立的"按钮调用"底层能力,待后台调查(过程是否写、读 API 会否触发写、后端是否对表单/过程/动作调用鉴权)后定。 **通用双确认流(copyto)**:① 对话内 diff + 确认按钮 → ② `ProposeWrite` 落暂存 `sp_ai_addcommonwx` + 返回 ERP 链接 → ③ 用户进 ERP 原生表单(预填)再确认 → ④ **ERP 暂存执行器**排空并执行真实写入。