Files
Wyndham-RSVN/docs/project/requirements/booking-agent-profile-v1.md

3.2 KiB
Raw Blame History

Booking Agent Profile v1

状态contracts-v1 的 AgentBus / SuperAgent 配置说明。Agent profile 本身部署在 AgentBus本仓库只保留受控调用端口和验收边界。

输入边界

Booking Agent 只接收一个 JSON 对象:

{
  "parsed_fact_set": { "...": "contracts-v1 ParsedFactSet" },
  "context_package": { "...": "contracts-v1 ContextPackage" }
}
  • 不接收原始 .eml、原始邮件正文、附件二进制、附件 URL、数据库连接信息、PMS/Opera 凭据或旧 V4 payload。
  • parsed_fact_set.agent_input_material 是唯一允许的文本材料:它只包含 current subject/body 的脱敏、限长摘要,绑定 CURRENT_BODY evidence最多 12,000 个 code pointquoted history、sender、URL、附件 bytes 和 Secret 不得出现在其中。
  • ParsedFactSet 已包含当前材料的事实、未解决字段、Catalog/Parser 版本和安全 evidence referenceContextPackage 只包含按 Group Code/订单定向取得的当前态,以及不含历史自由文本的 Trace 顺序摘要。
  • quoted history 不能单独触发动作;它只允许解释当前邮件中已有的目标。

输出契约

Agent 必须只返回一段合法 JSON结构为 booking-contracts-v1CandidateDecision

{
  "contract_meta": { "contract_version": "booking-contracts-v1" },
  "decision_origin": "AGENT",
  "result_disposition": "IN_SCOPE_TASKS | GENERAL_NOTIFICATION | RISK_NOTIFICATION | IGNORED_DIRECTION",
  "target_decisions": [],
  "message_notifications": [],
  "issues": []
}
  • 每个 evidence reference 的 evidenceId 必须来自输入不得捏造证据、URL、附件内容或分析过程。
  • 不确定、目标/材料/Parser 结果歧义时返回 RISK_NOTIFICATION + S99,不得猜测字段或把未知房量变为 FIT/0。
  • 已知业务但字段缺失时保留原业务类型和缺失字段;由 Validator / 用户确认处理。
  • 确定整封邮件无支持任务时才可返回 GENERAL_NOTIFICATION + S10
  • 确定为酒店外发或内部方向邮件时返回 IGNORED_DIRECTION,不生成任务。
  • 只有 ParsedFactSet 中已有明确 GROUP_CODE_REPLACEMENT relation 时,才能把 old→new 团号作为 Update不得从两个团号自行推断替换关系。输出 new group 的 Update 时必须保留该 relation 的 old/new/relationship ID。
  • Trace 部门只有输入证据唯一明确时可预填;否则保持空并令本地 Validator 阻断确认。可选部门为 FOHSKdepartment_codes: ["FO", "HSK"]。同团同封的多个 standalone Trace 可以分别输出,信息系统会本地合并且保留每条 linked action不得合并跨封 Trace。
  • 不调用工具,不下载附件,不写数据库,不建最终任务,不调用 PMS/Opera不向客户发信。

本地防线

后端适配器会:

  1. 只传递 ParsedFactSet + ContextPackage,并二次校验/脱敏 agent_input_material
  2. 将 Agent 输出标准化为服务端的 contract_meta 和 evidence 集;
  3. 拒绝未知 evidence
  4. 将调用/JSON 失败转换为目标级/邮件级 Risk
  5. 始终交给本地 BookingDecisionValidator,不能绕过确认页;
  6. 默认关闭,只有 TH_HOTEL_BOOKING_AGENT_ENABLED=true 且部署了 profile 后才允许调用。