修正SuperAgent任务结果来源消息定位
This commit is contained in:
@@ -130,6 +130,8 @@ REST request
|
||||
5. 必要时调用 `th_hotel_list_message_conversation_tasks` 查询同一邮件会话下已有任务。
|
||||
6. 最终只在明确产出任务结果时调用 `th_hotel_submit_task_results`。
|
||||
|
||||
写入工具里的 `source_message_id` 必须来自 AgentBus payload 的 `source.external_message_id`。SuperAgent 不需要传数据库层 provider/channel;TH Hotel 后端按系统酒店和外部消息 ID 匹配唯一 SourceMessage Inbox,真实 channel 可能是 `OUTLOOK`。
|
||||
|
||||
## 9. 当前 checkpoint
|
||||
|
||||
当前 checkpoint:
|
||||
|
||||
@@ -91,6 +91,8 @@
|
||||
| MCP-T05-005 | 缺省 hotel id | 不传 `hotel_id`,source message 属于系统酒店 | 后端按系统唯一 ACTIVE 酒店写入成功 |
|
||||
| MCP-T05-006 | 重复提交同一幂等任务 | 使用相同幂等信息 | 不重复创建业务任务 |
|
||||
| MCP-T05-007 | hotel id 不一致 | 显式传非系统酒店 `hotel_id` | 返回 `HOTEL_ID_MISMATCH` |
|
||||
| MCP-T05-008 | source message 入库渠道为 OUTLOOK | 不传 `source_channel`,只传外部 `source_message_id` | 后端按真实 Inbox 渠道写入成功 |
|
||||
| MCP-T05-009 | source message 多渠道重复 | 同一酒店存在相同外部 `source_message_id` 的多条 Inbox | 返回 `SOURCE_MESSAGE_AMBIGUOUS` |
|
||||
|
||||
写入验证:
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
| 字段 | 默认值 | 中文说明 |
|
||||
| --- | --- | --- |
|
||||
| `hotel_id` | 后端解析 | SuperAgent 默认不传;单酒店阶段由 TH Hotel 后端从 `platform_hotel` 唯一 `ACTIVE` 酒店解析,兼容旧调用传入时必须与系统酒店一致。 |
|
||||
| `source_provider` | `AGENTBUS` | 来源提供方 |
|
||||
| `source_channel` | `EMAIL` | 来源渠道 |
|
||||
| `source_provider` | 通常不传 | 查询类工具可作为隔离条件;写入工具不要求 SuperAgent 传数据库 provider。 |
|
||||
| `source_channel` | 通常不传 | 查询类工具可作为隔离条件;写入工具不要求 SuperAgent 传数据库 channel,AgentBus 邮件真实入库渠道可能是 `OUTLOOK`。 |
|
||||
|
||||
通用返回建议:
|
||||
|
||||
@@ -336,6 +336,7 @@ POST /api/ai-query/v1/message-conversation/messages
|
||||
|
||||
- SuperAgent 已完成当前邮件的最终任务拆分。
|
||||
- 已确认外部 `source_message_id` 来自 AgentBus payload;`hotel_id` 由 TH Hotel 后端解析。
|
||||
- 不需要为写入工具传数据库层 `source_provider` / `source_channel`;后端会按系统酒店和外部消息 ID 匹配真实 Inbox 记录。
|
||||
- 需要把 AI 任务结果交给 TH Hotel 后端进入人工确认流程。
|
||||
|
||||
### 7.3 不应使用
|
||||
@@ -359,11 +360,11 @@ POST /api/ai-query/v1/message-conversation/messages
|
||||
},
|
||||
"source_provider": {
|
||||
"type": ["string", "null"],
|
||||
"description": "来源提供方,默认 AGENTBUS"
|
||||
"description": "兼容字段;写入工具通常不需要传,后端写入定位不使用该字段"
|
||||
},
|
||||
"source_channel": {
|
||||
"type": ["string", "null"],
|
||||
"description": "来源渠道,默认 EMAIL"
|
||||
"description": "兼容字段;写入工具通常不需要传,后端写入定位不使用该字段,AgentBus 实际入库渠道可能是 OUTLOOK"
|
||||
},
|
||||
"source_message_id": {
|
||||
"type": "string",
|
||||
@@ -392,6 +393,8 @@ POST /api/ai-query/v1/message-conversation/messages
|
||||
|
||||
- `ai_task_results[]` 内部字段较多,完整结构以 `superagent-api-contract.md` 第 8 节为准。
|
||||
- MCP endpoint 不应重排 `ai_task_results[]`。
|
||||
- `source_message_id` 必须是 AgentBus payload 的 `source.external_message_id`,不是内部 `platform_source_message_inbox.id`;写入工具不要求 SuperAgent 知道 Inbox 的真实 channel。
|
||||
- 同一系统酒店下如果外部 `source_message_id` 匹配多条 Inbox,业务 Service 返回 `SOURCE_MESSAGE_AMBIGUOUS`,MCP tool result 应原样保留该错误码和 message。
|
||||
- 如后续需要强 schema 校验,可在 MCP endpoint 内复制 REST 契约中的细粒度字段约束。
|
||||
|
||||
### 7.5 输出
|
||||
|
||||
Reference in New Issue
Block a user