43 lines
5.0 KiB
Markdown
43 lines
5.0 KiB
Markdown
# CP32 每笔预订的预计接口与实际调用核对
|
||
|
||
## 用户目标与范围
|
||
|
||
用户希望在原工作台每笔预订下核对是否调用、选值是否正确,并在执行前看到系统预计调用哪些接口。本轮只补这个核对入口;不创建子智能体、不推送、不线上部署、不操作真实 Oracle,不修改邮件识别和员工确认规则。
|
||
|
||
## 交付行为
|
||
|
||
NEW / UPDATE 任务和对应预订记录可展开“预计调用的接口”。按当前 GROUP / FIT 类型显示办理顺序、接口名称、用途和前置条件,明确“流程预览,不代表已执行”。这是四条现有执行链的说明,不是已通过运行配置校验的请求,也不承诺固定调用次数。条件不满足、分页、逐笔预订和恢复都可能改变实际调用。
|
||
|
||
原办理面板下增加“接口核对 · 本机模拟酒店”:逐次显示查询或保存、接口代码、时间、HTTP 回执;展开后查看实际发送的业务字段与接口返回的核对字段。发送值来自已经序列化的请求,不从确认表单重构。HTTP 200 不等于业务完成,最终结果仍由现有查询核验决定。
|
||
|
||
缺少旧采集记录时明确提示,不能当作没有调用。实际检查的一笔旧 GROUP UPDATE 只在平台审计中有两次 searchBlocks / 200,未找到本机对象并停止后续写入;其历史请求参数未采集,未补造或自动重试。新执行的未找到、歧义、未能核实目标使用不同原因码。
|
||
|
||
## 实现与安全边界
|
||
|
||
- 正常 `OhipEdgeHttpAdapter` 默认使用空观察器;包内受信装配才能启用。观察器接收独立正文副本,不接收 HTTP 认证头,异常不改变业务响应或触发重发;采集之后仍重新检查调用截止时间。
|
||
- `OhipEdgeTraceValues` 只选择已知业务结构及字段,屏蔽凭据、原始邮件、附件字节、URL 和未知扩展;字段数、文本长度、深度有界,截断明确标注。
|
||
- 记录器和只读控制器位于 `src/test/local-fit-simulation/java`,不进入正常 Maven jar。只有本机专用装配与 `ohip.booking.trace-local-enabled=true` 才提供接口。私有目录 0700、逐调用文件 0600,原子替换;归属绑定 execution / 酒店 / task / card / confirmation version。
|
||
- GET `/api/reservation/order-tasks/{taskId}/cards/{cardId}/hotel-execution/calls` 使用原 `RESERVATION_TASK_READ`、当前酒店解析和原卡片归属校验,然后才读取本机文件。每页最多 50 条,最近在前。读取没有酒店查询、确认、续办或其他业务副作用。
|
||
- 前端切换任务取消旧请求并丢弃迟到结果,刷新重新建立连续分页;正式环境无测试路由时隐藏本机明细,不冒充正式审计。
|
||
|
||
## 验证
|
||
|
||
| 验证 | 结果 |
|
||
| --- | --- |
|
||
| Maven package | 2,672 项,零失败/错误,17 项条件跳过。 |
|
||
| 前端完整测试 | 37 个文件、347 项通过;类型检查通过。 |
|
||
| 相关 ESLint | 零错误;既有组件格式警告保留。 |
|
||
| 记录器及 HTTP 参数绑定 | 独立 LocalBookingTraceCheck 通过:白名单、权限先行、卡片/酒店/确认版本隔离、分页、路径校验、文件权限及 HTTP 200/403/404。 |
|
||
| 本机 FIT 新建页面确认 | 成功;93 次实际调用,包含 1 次 postProfile、2 次 postReservation、4 次上传及实际 GET。GC、BTQR、房型、Rate Code、Tour Code 发送字段已核对。 |
|
||
| 本机 FIT 修改页面确认 | 成功;175 次实际调用,包含 2 次搜索、2 次 putReservation、2 次上传、4 次旧附件删除和实际查询;新日期、房型房数和 Rate Code 已核对。 |
|
||
| 原工作台只读检查 | 5178 / 8082 新版本已加载;旧任务预览与历史空态正常;越权酒店 403、错误卡片 404。 |
|
||
| 原运行保留 | 原 44 个环境变量、启动设置、EML / Agent、身份权限、58 H2 / 24 PG 表的稳定内容摘要保持,无历史补办。继续使用原本机模拟酒店服务,未重建其数据。 |
|
||
|
||
初次隔离验证发现测试装配缺少反射参数名,以及局部异常未映射 HTTP 状态,均已修正并补 HTTP 绑定测试。刷新时合并不连续页的风险改为刷新重建首页,防止中间调用无法加载。完整前端测试发现新增多语言字段键不齐,补齐后 347 项全部通过。
|
||
|
||
私有证据位于工作区 `.planning/ohip-interface-review-20260915/cp32-execution-review/`,包含隔离调用摘录、测试结果、本机加载和双库摘要;不提交真实业务数据或凭据。启动包为 `server/var/local-replay/runtime/ohip-cp32-execution-review-20260917/th-hotel-local-simulation.jar`,SHA-256 `6c9b5dce2492b5446ad9be7db3d780f86c12df3f5de3588d83fa0241dda63bda`。
|
||
|
||
## 当前使用与后续边界
|
||
|
||
在原任务下展开“预计调用的接口”;新执行后在“接口核对”中展开实际调用,必要时加载更早记录。旧失败任务未自动续办,也没有为其制造缺失的模拟预订。真实 Oracle TA 字段与正式审计存储仍不在此次范围内;本机模拟成功不等于真实酒店验收。原 EML 入口保留,本轮未重新运行识别 Agent。
|