实现 M002 V4 入站解析基线

This commit is contained in:
andy
2026-07-18 17:32:07 +07:00
parent b949177feb
commit 6be14f2b40
9 changed files with 1445 additions and 31 deletions

View File

@@ -4,9 +4,9 @@
| 项目 | 内容 |
| --- | --- |
| 文档版本 | 1.0 |
| 文档版本 | 1.1 |
| 日期 | 2026-07-18 |
| 状态 | 当前 V4 字段基线;后续需同步 SuperAgent、Adapter、MCP Schema 和信息系统 DTO |
| 状态 | 当前 V4 字段基线;后端已完成 CP1 入站解析与数据模型基线,完整 V4 多卡模型仍需后续 checkpoint |
| 适用范围 | 0718 业务基线下Agent → Adapter / MCP → 信息系统的业务回调字段 |
| 不适用范围 | 数据库表设计、前端视觉细节、真实 PMS API、技术失败后台重试、旧 M002 V3 数据兼容 |
@@ -14,7 +14,7 @@
本文把 2026-07-18 导入的业务基线、Agent 回调问题答复、草案审查答复和剩余 10 项确认回复,整理为 M002 V4 的 Agent 回调字段契约。
本契约用于后续 M002 V4 主流程设计、后端领域建模、前端页面模型、Adapter / MCP Schema 对齐和 SuperAgent 联调。当前代码尚未按本文完成改造
本契约用于后续 M002 V4 主流程设计、后端领域建模、前端页面模型、Adapter / MCP Schema 对齐和 SuperAgent 联调。当前后端已按本文完成 V4 入站解析基线:能识别 V4 包、校验关键契约、保存 AI transition / 任务卡原始 payload并把可映射的六类 event 先接入现有订单任务链路
当前已确认开发阶段数据可以清空,因此 M002 V4 后续可以按新模型重建,不要求兼容旧任务数据、旧草稿、旧 OPERA 模拟、旧 `S000/S999`、旧 Fallback 或旧 `case_keys`
@@ -681,3 +681,24 @@ AI 回调包
- 当前无 PMS API不生成 OPERA 模拟操作和 PMS 成功语义。
- 技术异常不创建用户可见任务。
- 开发阶段不兼容老数据,允许清空旧任务相关数据后迁移。
## 25. 后端 CP1 已落地范围
2026-07-18 后端已完成 M002 V4 入站解析与数据模型基线,当前代码支持:
- `POST /api/integrations/superagent/task-results` 接收 V4 JSON 包:`route_code``source_message``order_contexts[]``message_events[]`
- `source_message.source_message_id` 按 SourceMessage Inbox 的 `external_message_id` 定位当前邮件SuperAgent 不传内部数据库 ID。
- `route_code=S10/S99` 复用现有 `SOURCE_MESSAGE_ONLY` 只读特殊任务机制;任务列表可见,订单列表不可见,不可编辑和执行。
- 普通业务包要求 `route_code=null`,并按 `message_events[]` 数组顺序处理。
- 第一版识别六类 `event_type``NEW_BOOKING``UPDATE_BOOKING``CANCEL_BOOKING``TRACE_RESERVATION_NOTES``ROOMING_LIST``PAYMENT`
- 能映射到现有稳定任务卡的 event 会创建业务任务,并在 `ai_payload_json` 中保存 `v4_source_message``v4_order_context``v4_message_event``route_code`、系统处理分类和 `field_contract_version=20260718-v4`
- `PAYMENT.attachment_ids[]` 必须能匹配 `source_message.attachments[].id`;不匹配时只写 `adapter_contract_error` transition不创建用户可处理业务任务。
- `UPDATE_BOOKING` 中出现 `rate_code``after.rate_code` 时按 `UPDATE_RATE_CODE_NOT_ALLOWED` 写入 `adapter_contract_error` transition。
- `manual_review` 只接受 `null` 或布尔 `true``true` 必须能由当前对象中可识别的未解决字段解释。
当前 CP1 仍未完成:
- 尚未重建 V4 订单任务 + 多卡领域模型Basic Information 仍只是保存在 V4 原始 payload / order context 中,未作为独立可确认任务卡落地。
- 尚未取消 V3 草稿 / OPERA 模拟骨架;现有可映射 event 仍复用 M002 V3 任务状态和任务卡创建链路。
- 尚未接入真实 PMS / OPERA / OHIP。
- 尚未改造前端 V4 页面模型;前端第一版只能通过现有任务详情字段和原始 payload 观察 V4 入站结果。