This commit is contained in:
2026-10-19 10:40:53 +08:00
parent aa904e4a2d
commit d0fac0118f
10 changed files with 905 additions and 10 deletions
+235
View File
@@ -1,5 +1,240 @@
# 测试环境单机部署与配置契约
## 随机数量演示批次D1681准备(2026-10-19)
用户随后要求沿用流程、随机调整数量,选定12箱4托、每托3箱,现场演示9箱首批与3箱后批。此前D1680已实收入库,因此保留不改;本次通过正式TEST业务接口另建柜次 `D1681`、柜号 `TSTU2713380`、入仓码 `NYEXX2610190002`、国内订单 `FL2112001474456780802`、尾程订单 `FL-WH-20261019-328883`、海外入库单 `IP-ABE4-20261019-724033`。客户为IT测试公司,路线US-LAX-01洛杉矶仓至ABE4;4个真实托盘为 `D1681-126-001` 至 `D1681-126-004`,各3箱,已完成海外入库。货物核实、预约、9+3分批、排车、车次均留给现场;首批拟选择前三托,后批保留第四托。
7项只读核验通过,覆盖来源无预约、12箱零分配、4个符合候选条件的托盘、入库完成、未分配送仓事项、未定日期及柜号搜索。前两轮日历查询为同步守卫A0409,随后自动同步收敛,未人工同步或修改环境。请求审计为46次非认证业务写入,预约/排车/车次创建与删除均0次;D1680、D1674及原两箱样本未写入。本轮专用PDA账号已停用,自有会话已退出;无SQL、部署或发布。
证据为后端 `reports/appointment-leader-demo-random-20261019/` 的 `report.json`、`commands.json`、`requests.jsonl`,以及根目录 `.codex-temp/appointment-leader-demo-random-20261019-verified.json`,初次同步守卫证据另存 `appointment-leader-demo-random-20261019-first-check.json`。新指南为 `outputs/预约分批排车演示操作指南-D1681-20261019.docx`,4页实际Word渲染已逐页检查;演示从搜索TSTU2713380开始,车辆司机按现场最新可用资格选择。原D1680指南保留供其原批次使用,本次采用D1681指南;真实页面操作预期未冒充人工验收完成。
## 预约分批排车新演示批次准备(2026-10-19)
用户授权追加一批演示数据并生成操作文档。新样本为柜次 `D1680`、柜号 `TSTU6094577`、入仓码 `NYEXX2610190001`、国内订单 `FL2111986044623192066`、尾程订单 `FL-WH-20261019-218403`、海外入库单 `IP-ABE4-20261019-626049`;客户为IT测试公司,路线为US-LAX-01洛杉矶仓至ABE4。6箱已完成海外入库,落在3个真实托盘 `D1680-126-001`、`D1680-126-002`、`D1680-126-003`,每托2箱。货物核实、创建预约、4+2分批、确认首批、排车和安排车次均留给现场演示,准备结束时未创建预约、排车单或车次。
7项只读检查通过:来源保留且无预约、6箱零分配、3托合计6箱符合候选条件、海外入库完成、存在未分配送仓事项、未定日期可见、柜号搜索可定位。首轮日历查询曾遇同步守卫,随后只读重查自然收敛;不据此宣称同步问题已修复。通过正式业务接口仅准备本轮新样本,未执行SQL、删除、重置或发布,未修改旧批次D1674及D1672;本轮专用PDA账号已停用,自有认证会话已退出。
证据为后端 `reports/appointment-leader-demo-20261019/` 的 `report.json`、`commands.json`、`requests.jsonl` 及根目录 `.codex-temp/appointment-leader-demo-20261019-verified.json`。4页操作指南为 `outputs/预约分批排车演示操作指南-D1680-20261019.docx`,已逐页检查实际Word渲染;内容包括业务编号、4+2分批、两托排车及刷新后沿用已创建排车单。车辆、司机候选仅只读核对资格,未预占资源;人工页面演示尚未执行。
## 刷新后沿用原排车单 TEST Admin 补修(2026-10-19,已发布,只读验证通过)
用户明确授权补齐刷新后的用车续办、沿用 `DS-WH-20261018-861762`,提交并发布 TEST Admin,禁止重复创建或修改演示数据。本批精确提交推送 `4bb21641d92fade390fe633d2445e2b14dc6de28`,共5个预约组件、直接测试及矩阵文件;工作区原7处未提交调整保持。
用车表单现在先读取当前批次 `appointment-receiving/batches/{batchKey}` 的运输关系,恢复已有排车单,再通过原排车详情的 `appointmentBatches` 精确核对批次与客户。原单继续进入既有安排车次弹框,已有车次则查看原车次;多批共用同一排车单只读取、展示一次。关系读取失败、批次/客户不匹配或原单取消时不回退新建。只有用户明确选择核对本批剩余实物并且原单校验成功后,才读取当前剩余候选;仍保留原服务端资格、锁及版本校验。没有新增API、SQL、后端、权限或路由配置变更。
Jenkins `admin-web-test #634` 固定上述提交发布 SUCCESS,实际检出一致。当前Admin容器为 `admin-web-test:4bb21641d92f`、`running / healthy`,镜像ID `sha256:991b1f85b70adf1ee00cd4c080d5b8c699b95aac94c33c9e8ee130dda3aebab9`。公网510个HTML、运行配置及JS/CSS文件与容器逐项SHA-256一致,修复代码标记存在,健康/预约/排车列表三个入口HTTP 200。临时Job锁定配置已恢复且完整XML语义匹配发布前;Lastleg仍为 `45fbd6eff8dd`,镜像和健康核对未变。
最终暂存区候选37项定向检查通过,包含真实TEST只读关联快照在本地组件中重挂载两次、原DS显示、原起运仓和DS传入安排车次弹框、查看原单跳转,以及未调用候选/草稿/锁托盘/新建请求的断言。类型检查、构建及5项Gateway合同通过。本轮工作区全量3363项通过、2项失败,仍为此前调拨输入提示和尾程详情页签的非预约合同;最终资格联动补充经过上述定向检查,不宣称全量绿灯。
发布后13项只读检查全部通过,包括批次运输关系中仍存在指定DS、原单仍持有精确批次与客户、工作摘要/10月日历/柜搜索/批次定位/目标用车事项可读、样本不变及自有会话退出。演示预约 `AP-20261018-33014AE768F9` 与原DS完整响应的SHA-256前后保持 `16a2a486981de2f87e7ad7f0aabbdf27f402a785f52327b6ca52a693c02c384c`、`e0b316e049df6a81a5fd10147498c2ef3c90176d794fd1894b98084ca0e3c6c1`。发布后真实关联快照再经本地组件验证通过1项:刷新后仍恢复该DS,打开安排车次时绑定该DS和原起运仓,创建相关请求0次。HTTP仅GET及自身认证登录/退出,业务写入0;未确认车次、重建排车、修改托盘/预约或操作原两箱样本。
真实浏览器交互和1920×1080、100%缩放截图仍待人工确认,本地组件加载真实只读快照不冒充真实页面点击验收。续办路径为刷新预约页、打开4箱送仓事项、点击“继续安排本批车辆”、在“沿用本批已有排车单”中核对原DS,再点击原DS行的同名按钮进入安排车次;不点击创建排车或剩余实物入口。证据位于Admin `.logs/appointment-dispatch-resume-20261019/`:`source-manifest.json`、`release-state.json`、`jenkins-build.json`、`public-runtime-verification.json`、`smoke-before.json`、`smoke-after.json`、`resume-fixture-after.json`、`LiveResume.test.ts`。
## 预约三项修复 TEST Admin 发布(2026-10-18,已发布,只读烟测通过)
用户在 Bug 处理对话明确授权提交本次预约修复、部署到 TEST Admin 并做必要验证,演示数据保持。Admin 精确提交并推送 `67d917010dff0bbbea42059e3d6075645bb1c889`,共9文件;只包含同步等待读取、缓存预约页弹框随停用移除、送仓到用车事项续办资格判断及直接回归/矩阵,不包含工作区前序未提交的表格、搜索、样式、自营等调整,原7处未提交修改保留。
Jenkins `admin-web-test #633` 固定上述提交发布 SUCCESS,实际检出提交一致。运行容器 `admin-web-test:67d917010dff` 为 `running / healthy`,镜像 ID 为 `sha256:7e72bb425f8947be88f34089de2dabb198b707f0ca7ef944b88cc7a967618689`。公网510个 HTML、运行配置、JS/CSS资源与容器文件逐项SHA-256一致,包含本次预约修复代码;健康入口、预约页、排车列表路由均HTTP 200。临时锁定提交的Job配置已恢复,完整XML节点语义与发布前一致。Lastleg仍为 `45fbd6eff8dd` 且镜像/健康核对未变,本轮无后端、SQL、Nacos、权限或路由配置发布。
本地直接从Git暂存区加载精确候选的5个测试文件47项通过,Gateway路由合同5项通过,工作区类型检查通过;Jenkins按精确提交完成类型检查及生产构建。此前工作区全量为3356项通过、2项非预约合同失败(调拨实收数量输入缺提示、尾程详情页签内容合同),本轮未改动相关页面或宣称全量绿灯。
发布后按单请求流经Admin同源统一Gateway只读核对:工作摘要、2026年10月日历、领导演示柜搜索、已存在预约批次定位、目标用车事项最新资格均HTTP 200/业务200;送仓下一步为“继续安排本批车辆”,目标确为可读取的TRANSPORT事项。演示预约 `AP-20261018-33014AE768F9` 与排车单 `DS-WH-20261018-861762` 的完整业务响应在发布前后SHA-256分别保持 `16a2a486981de2f87e7ad7f0aabbdf27f402a785f52327b6ca52a693c02c384c`、`e0b316e049df6a81a5fd10147498c2ef3c90176d794fd1894b98084ca0e3c6c1`。验证只创建并退出自己的认证会话,业务写入0;未重建、保存、分批、配车、重置或修改任何演示数据,原两箱样本未操作。
边界:本轮不重演写操作,不人为制造同步守卫变化;同步等待/超限与跨事项资格、弹层停用/恢复由离线回归覆盖。服务端完整工作清单同步机制保持,前端只对明确的同步守卫重读GET,间隔2秒、累计等待最多30秒,超限显示原错误。真实页面的保存后续办、查看排车单弹窗关闭、继续配车三项仍待用户在1920×1080、100%缩放下人工操作确认,不以资源/HTTP验证代替。证据位于Admin `.logs/appointment-repair-release-20261018/` 的 `source-manifest.json`、`release-state.json`、`jenkins-build.json`、`public-runtime-verification.json`、`smoke-before.json`、`smoke-after.json`。
## 排车修复 TEST 提交、发布与验收(2026-10-18,已发布,定向接口验收及独立复核完成)
该排车修复批次发布版本为 Lastleg #360/`45fbd6eff8ddc81e8a0da91b5719ce4c38c1061e` 与 Admin #632/`a5a19769244f51ca58ca0da8a637dc5d413b6aab`,实际镜像均已核对且健康;后续Admin更新见上节预约修复记录。#360 为 3098 项通过、9 项跳过、零失败;本次增量无新增 SQL。定向接口验收及第三对话独立复核均通过,当前冻结代码与已执行范围内无已知未关闭业务阻断。完整逐项证据、哈希及边界见后端 `lastleg-service/target/dispatch-repair-final-acceptance-matrix.json`。基础取消、出库、全托及原箱场景实测于 `db4354b`,最新 `45fbd6e` 实际重验 DR04;未把未重跑场景写成均在最新版本重新执行。
用户在排车规划对话明确授权提交本批代码、部署并验收,执行分工见[独立任务协作登记](独立任务协作登记.md)的排车修复条目。范围为 Lastleg 与 Admin 的匹配版本,不包含生产环境、其他服务、Nacos 或 IAM 配置。原后端 60 文件与脚本消费者 4 文件先精确提交并推送 `aa33514ec6b896e0e1a8b87b4e5ee0f21b3e9c38`,提交门禁 28 项通过。其 CI #358 全量失败后,已审 3 文件补正精确提交为 `db4354bda8fd48756192f02095d1f390140f1148`,Lastleg 生产源码树保持原已审候选。正式流水线 #359 固定新提交、`SKIP_TESTS=false`、`DEPLOY=true`,已 SUCCESS;实际 checkout、镜像版本和运行容器 `running / healthy` 已由独立对话核对。
Admin 在保留其他窗口未提交修改后同步现有线上基线 `4806f88`,精确提交并推送本批 29 文件 `a5a19769244f51ca58ca0da8a637dc5d413b6aab`,同步后的构建与路由合同通过;独立复核确认提交范围和内容一致,其他 7 处未提交修改未纳入。确认 Lastleg 实际版本、健康及 Schema 后,Admin TEST #632 固定该提交发布 SUCCESS,运行容器 healthy;公网 510 个静态资源与容器文件逐项哈希一致,健康入口及 3 个页面路由 HTTP 200。临时固定提交的 Jenkins 配置已恢复,独立复核确认 40 个配置节点语义与原配置一致。
发布后通过 Admin 同源统一 Gateway 的小分页只读烟测已独立复核 PASS:真实排车 `actions`、阻断字段及出库关联,派送字符串版本、`MARK_RETURN` 和普通来源 `lastMileOrderId` 符合契约;未登录返回 401,客户访问平台域返回 403。报告保留 48 条检查,其中 47 条通过;首轮 1 条会话撤销检查误用了平台域路径,已由客户自身资料接口退出前 200、退出后 401 的补验关闭,未关闭失败为 0。测试自己的平台/客户会话均退出,无业务数据写入。证据为 Admin `.logs/dispatch-repair-test-release-20261018/readonly-http-smoke.json`。受限平台只读角色、原箱来源和业务写入链、人工视觉尚未由该烟测验证。
发布前只读核验发现 TEST `baiyue_lastleg` 缺少本批原箱回仓结构。用户明确授权固定 SQL 后,后端已执行 `lastleg-service/target/dispatch-repair-test-schema-20261018.sql`(SHA-256 `0d016752bac700d67de943e82a03db50853986c5dc3efa35f178ca8eb3ab0f6b`),MySQL 退出 0:`ll_exception_return_item` 的库存位置可空、原箱两列、唯一键和来源互斥 CHECK 已就位;新增 `ll_return_carton_stock_receipt` 的 24 列、4 组索引及数量约束均核验通过。原有 48 条退回明细逐行内容哈希执行前后均为 `d98fba5821aea9855a778041d02d8b78690bd7adb11332cf7a5bb5fdfb30801a`,新凭据表在结构验收时为 0 行,无业务 DML、删除、重置或空库基线重放。回执及结构证据分别为后端 `lastleg-service/target/dispatch-repair-sql-execution-20261018.json`、`dispatch-repair-sql-schema-verified.json`。结构前置已关闭,并经独立复核;后续 Lastleg #359 已完成匹配版本发布,不重复执行该 SQL。
CI #358 全量测试发现新增表后空库基线末尾表数声明未更新,以及旧退货出库持久化测试夹具缺少新表;未生成可发布镜像或替换容器。后端已修正并保留原断言,16 项 Java 与 121 项 Node 检查通过,SQL 表数、SQL README、持久化夹具这 3 文件经独立复核后形成上述 `db4354b`。专项验收助手另 3 文件曾因本轮样本身份绑定、混托独立对照和原箱逐 SKU 恢复/重放断言不足退回补正;R3 已完成独立复审 PASS,35 项助手测试及连同相邻合同共 135 项通过。首次原箱回库须同时验证总量、可见可用量及箱数恢复,并保留凭据、流水及同键重放零增量;旧业务号、重复混托样本、错误报价和库存恢复遗漏均有失败反例。原 6 文件清单 `lastleg-service/target/dispatch-repair-release-followup-candidate.json`(SHA-256 `2fd749d47a0787d1194054c9e602c653411b99533e8b762106a6c05e43159f02`)仅记录早期候选,不能作为 R3 冻结版本使用。
既有本地证据为后端 345/345(含独立组合场景 9 项)、前端受影响模块 905 项及最后合同增量 40 项和构建通过,脚本相邻、入口、文档合同分别 96、74、4 项通过;Lastleg #359 全量 CI 为 3091 项通过、9 项跳过、0 失败。这些测试集有包含或复跑关系,不相加为总用例数。验收助手 R3 的 3 文件已精确提交推送 `4bef8577fac11bc5be80e13e38687f613e88d98d`;运行中发现客户换标摘要不返回 `customerId`,R4 改从同会话客户资料回执核对归属并保留原箱父来源、显式客户和仓库冲突校验,137 项检查及独立定点复审 PASS。该脚本补正不改变已部署服务源码。
发布后以本轮正式 API 新建合成样本,以下四项已完成独立环境复核 PASS:普通来货转派送后取消出库、取消原排车并重排,原排车/出库/派送均为 `CANCELLED`,新排车保留同一物理托盘及 2 箱,旧转派送键仍返回原取消出库;锁表旧锁为 `RELEASED`、`active_key=null`,同一来源唯一活动锁归新排车。随后重复取消旧出库与旧排车,新排车及锁、费用身份/版本/金额/时间均不变,已发布 `VOIDED` 事件前后各仅 1 条。USD 0.01 派送费用为 `VOIDED/CONFIRMED`,证明 Lastleg 已收到 Finance 成功 ACK。状态和费用证据为后端 `reports/dispatch-repair-DR-CANCEL-20261018111401-123033` 及同前缀 `-state-audit`、`-finance-audit`;锁与流水见 `lastleg-service/target/dispatch-repair-current-sample-db-audit.json`,重复取消见 `dispatch-repair-repeat-cancel-verified.json`。
独立发车样本首次与同键重放均实发 2 箱、发车时间不变,重放标记为真;发车后取消出库被 `A0409` 拒绝,手工取消派送被 `A0400` 拒绝,出库仍为 `OUTBOUNDED`、派送仍为 `WAIT_DELIVERY` 且版本 0。只读持久化证据确认仅一条 2 箱拣货记录、一条 SHIP 流水 `2→0`(−2),无重复扣减或补偿抵消,当前仓位与余额的可用/占用/已拣数量均为 0。报告见 `reports/dispatch-repair-DR-DEPART-20261018111749-03557e`,与上述 DB 审计共同组成发车门禁及重放 PASS。
原箱样本通过正式签收、清点、卡车换标、组托、转派送和模拟发车后,原生无普通入仓关联的单箱单 SKU 回仓已独立复核 PASS:总量/可见可用量/箱数从 `0/0/0` 恢复为 `3/3/1`,生成唯一 `EXCEPTION_RETURN_IN` 凭据;同键重放库存、流水、实收时间和目标托盘/库位均不变,派送进入 `RETURNED`,见 `reports/dispatch-repair-DR-NATIVE-20261018112309-799d6e-resume-4/report.json`。多 SKU 原子回滚仍由离线测试覆盖,不能将本单 SKU 环境结果扩写为多 SKU 环境通过。
退货换标 `RETURN_RELABEL` 两托全选已独立复核 PASS:单托提交返回 `A0409`,申请保持 `READY_FOR_OUTBOUND/WAIT_PRE_DISPATCH` 且两托候选不变;全选后生成一张同两托、共 2 箱的排车。普通库存换标已有独立环境复核 PASS:候选为 `RELABEL_APPLICATION`、`returnCartonSource=false`,单托拒绝后申请及候选快照完全不变,全选同两托、共 2 箱成功,证据为 `reports/dispatch-repair-DR-NORMAL-20261018113924-34c34d-resume-1/report.json`。新建理货员测试账号的出库详情读取成功,取消被 `A0403` 拒绝且记录不变,账号已停用,权限窄范围独立复核 PASS;证据为 `reports/dispatch-repair-DR-NORMAL-20261018113924-34c34d-readonly-permission-resume-1/report.json`。旧脚本中的移托 DELETE 负向操作不在本轮已确认授权内,未照跑整入口;本轮新样本的正式取消状态命令已按授权验收。
混托实收重新核对发现环境阻断:解除唯一排车后,携带有效实测的 `receipt-confirmation` 返回 `A0409`,要求先重新核对自有货容量计划;空车的容量计划又拒绝提交,新混托排车则被旧实收托盘不一致阻止绑定。该循环不能通过添加无关自有货绕开后认定 PASS。执行方曾使用额外自有货继续测试,已明确其不覆盖原唯一货物场景并保留证据,后续已在解绑该额外货物的同一原样本上复现。初次缺测量负例应保持拒绝,实收重量/体积是该票外接货的份额,不能将混托总量冒充该票测量。
针对上述循环的 5 文件补丁与助手分组查询 2 文件已独立复审 PASS,并精确提交推送 `45fbd6eff8ddc81e8a0da91b5719ce4c38c1061e`。仅对已有实收凭据、`RECEIVED` 且当前自有货为空的重新核对使用零自有货计算,继续纳入其他有效预留、当前车辆及路线容量;首次实收、缺测量、超容量、来源/版本冲突和非空失效计划仍拒绝。61 项定向 Java、137 项助手相关检查通过;助手按普通/外接真实入仓码分别查询,避免同 SKU 分组代表行漏读,原数量和报价断言保留。Lastleg #360 固定此提交发布成功,运行版本与镜像健康已独立核对;Admin #632 的 7 个相关触点无需改动。
原唯一货物混托路径发布后独立复核 PASS:重新确认前为 0 自有货且无容量计划,缺测量仍拒绝,原外接本票 `100kg/1m³` 实测重新确认成功,同键重放实收、版本和时间不变,未生成空计划。两车最终各仅绑定本轮原混托排车,两种展示来源均按真实组成核对为普通 2 箱、外接 1 箱,外接报价均为 1 托位 × USD 2;旧失败和绕行报告哈希保留。实际转派送费用链及重放唯一性已独立复核 PASS:每票普通货 USD 0.01、外接约定运费 USD 2,同键重放保留原单和费用行;四个来源与派送、预订及真实入仓码对应,各仅一条 `PUBLISHED` 事件。费用证据为 `reports/dispatch-repair-DR-MIX-20261018113330-a6223a-mixed-transfer-fees/report.json`、`lastleg-service/target/dispatch-repair-mixed-fee-outbox-audit.json`;该结果不扩写为 Finance 对账库或最终结算已验。
验收边界:并发竞争、多 SKU 原子回滚及部分异常反例仅有离线验证;真实预约分配释放、完整“绑定后解绑→取消”组合链未做环境专项,取消样本无预约分配不能推定该项通过。仓库调拨及退货换标样本不适用 FIRST_LEG 国内完成事件,`sourceEventsVerified=false` 原样保留。DR06 草稿及选择恢复有离线检查,浏览器刷新、失败恢复和展示仍待人工验收;1920×1080、100% 截图、PDA 真机及真实外部预约/POD 凭证均未验收。上述为明确未覆盖范围,不冒充通过,也不作为未知业务阻断。
收尾:15 个本轮专用测试账号均已逐一回查为停用,当前受控驱动会话正常退出;早期预检有空请求体退出失败(`A0422`),原会话撤销未随后确认,未吊销无关共享账号会话。原始失败、绕行、修复前后报告均保留,业务样本未删除或重置。其他窗口未提交修改未混入本批提交。
## 生产已提交更新发布执行检查点(2026-10-16,已发布并完成接口验收)
最终运行:后端固定提交`46d359241f2749eaf31e4253ffff43acd55cb98c`,IAM #12、Firstleg #17、Order #12、File #20、Integration #9、Lastleg #16、Warehouse Overseas #10全部DEPLOY=true/SUCCESS;Admin #28固定提交`eb1d75222acf7ed2d80121bceb2297154d35ed60` SUCCESS。八个生产容器均核对对应镜像且healthy。预构建#30完整门禁报告5,937项、失败0;本地Admin自营模块25文件213项回归通过(本地工作区含其他窗口尚未纳入本批的页面改动,生产版本以固定提交和真实HTTP为准)。现有表4项约束升级于18:57:04执行并读回核验通过,执行回执`target/production-release-existing-ddl-execution.json`;没有删除既有业务记录或复制其他业务数据。
真实生产接口验收通过:US01/US02经营总览、SKU销量、库存周转、多货主、隐藏零库存、库存立方数降序、周转率升降序及跨页边界;库存周转可见SKU分别2,787/769,30日出库立方数分别371.671006854275/88.366481175 m³(截至10月15日,核验时固定版本)。后台导出任务`EXP2111051110576103425`(SKU631行25列)及`EXP2111051139768459266`(货主2行16列)均一次成功并下载XLSX;前100行与页面接口逐项比较、全表周转率降序、百分比计算和未知值置末验证通过。证据见`target/production-release-acceptance.json`、`target/production-release-export-*-xlsx-proof.json`。没有以接口验收冒称人工页面截图验收。
19:06—19:09按唯一出口交接:先将TEST Lastleg和Integration配置关闭并同镜像重启,内部运行态确认OFF、executionEnabled/providerEnabled=false、无运行任务及待完成请求,再开启生产同账号BUSINESS持续模式、1200ms、销量发布和60日历史还原。生产双方账号及新独占授权指纹匹配,旧请求计数、冷却和暂停字段保留,没有新增每日额度或时间截止。生产实际库存任务`LXCOL-20261016-0509B18DB81D4C38`于19:09:43成功发布,6页、21秒,发布版本`2111051873929478145`;生产预留/确认请求计数28164/28162,TEST仍28158/28156、无新增请求,两边账号均无暂停。下一次两仓日销量自动计划为北京时间10月17日00:05,库存为08:00;这是已生效配置和计划的核验,尚未等待下一自然定时事件。证据见`target/production-release-handoff-state.json`、`target/production-release-runtime-{test,production}.json`、`target/production-release-collection-status.json`。TEST后续只读使用现存数据,真实领星采集由生产接管。
用户本轮明确授权生产数据库操作和代码部署,并在范围确认中选择“生产也同步其他已提交改动”;仅发布固定已提交版本,不包含工作区未提交文件。生产 main 受保护,正常 PR 已合并:后端 #27,来源 `9ea03eb5401b15069046b9310097da82a32fd4a8`,合并版本 `59508069241499ac3ac22d3a0c18b0a4af090cb6`;Admin #20,来源 `2705fdbc4983e65f226972e4670efd4f9490edca`,合并版本 `eb1d75222acf7ed2d80121bceb2297154d35ed60`。Admin 初始候选后新增的是对应后端换标/转运单据相关已提交更新,已纳入并冻结。未切换本地分支、创建工作树或修改其他窗口文件。
生产容器已只读核实,Lastleg/File 仍为 `4dc3d1752e27`,Integration 为 `4825f782a32f`,Admin 为 `545205e28d43`,均健康;实际生产 Nacos namespace 的 SHA256 前12位为 `86f4c523f801`,已核对生产 Lastleg 容器的数据库凭据绑定与本机生产连接指向同一 MySQL 实例。完整10个服务 schema 的结构对照已保存于后端 `target/production-release-schema-diff.json`。TEST 多出的35张表中4张不在冻结提交的当前初始化基线,未按测试存量盲目创建。
北京时间18:05:48,已执行固定源基线抽取的增量 DDL:新增31张表(Firstleg直送卸货1张,Lastleg自营19张与预约相关11张),给两张现有预约表增加5个可空字段。客户端退出0,尚需最终结构复核;没有删除或改写原业务记录,没有重放整个初始化脚本。此前生产只读计数:柜次14、排车21;预约头/明细/命令三表均0。SQL与执行回执分别在后端 `target/production-release-additive.sql`、`target/production-release-additive-execution.json`,DDL SHA256 `ed6082e8b435ecbc4773af0d5edb0dc12f108100cdc6ca596b2b9ada0e0bd14b`。禁止盲目重跑,先复查已执行结构。
用户随后明确:除海外仓此次领星数据外,其他业务只更新功能,不迁移数据;如果海外仓迁移受阻可以重新采集。当前仅复制真实自营账号的业务事实、当前发布版本及其采集证据,不复制其他模块业务数据或测试账号、角色、验证样本。18:41:53,16表共1,314,532行复制完成,全部通过逐表计数及全行哈希校验,执行回执 `target/selfop-production-transfer-execution.json` 为COPIED_VERIFIED。之后只读核对US01/US02四个发布指针、事实修订及账号计数仍与TEST一致,两仓各61个历史日头覆盖8月16日至10月15日。禁止盲目重跑。
18:10:35已执行10项新增功能权限及平台管理员授权,并更新关联权限版本、补预约工作guard种子;执行回执 `target/production-release-permissions-execution.json`。生产Nacos已按字段准备Lastleg自营、Integration领星凭据及File导出注册;采集仍为OFF,未启用出口,原配置在生产主机受限目录保存。凭据只在内存和对应受控配置间传递,未写源码或本机证据。另4项现有表约束升级SQL已准备,尚未执行,需在对应服务发布前复核前提。
Jenkins `backend-java-prod #28` 因车次合同测试漏列正式跨文件引用失败,测试修复通过PR #28合入main `57fcf295b193d6d5ee425d099ee26d562048514d`;第二次预构建#29已报告5,016项、0断言失败,但在SQL语义测试出现1GB测试JVM内存耗尽,整批仍失败。现将SQL语义测试隔离进程,并修正旧编号测试将稳定BX箱唛误当随机业务编号的断言;本地58项定向复测及隔离进程重测均通过。生产PR #29已合入main `46d359241f2749eaf31e4253ffff43acd55cb98c`,#30正在完整预构建。三次均`DEPLOY=false`、`SKIP_TESTS=false`,未替换生产服务或发布前端。25项本地路由与流水线合同此前通过,31张新表、5个可空字段、10项权限及管理员授权已只读核验通过。后续仍需固定提交完整构建、现有表约束升级、服务发布、唯一出口切换及真实接口/排序/Excel验收;仅合并、建表或复制数据不得宣称上线完成。
## 自营四页面生产与TEST只读差异核验(2026-10-16)
用户授权通过已有生产数据库连接比较四页面上线差异;本轮只执行有超时的只读事务、配置读取和Jenkins记录查询,没有SQL写入、数据复制、采集切换或生产发布。生产 `baiyue_lastleg` 可见182张表,TEST可见214张;生产缺少TEST全部19张 `ll_selfop_*` 表(16张正式采集/统计/资料/历史库存表,另3张数量对照诊断表),无同名自营表需要ALTER。生产还缺13张预约、派送及采购等非自营表,不能将这32张差异一起当作四页面建表范围。未发现三个受查业务库的Flyway历史表,不假定版本迁移机制已经接管生产。
生产IAM不存在 `platform:self-operated*` 的8项菜单/权限;8个基线ID目前无占用,平台管理员角色4000001存在且ACTIVE。应准备该功能的完整权限及平台管理员授权,不能同步TEST其他账号或角色关系。生产和TEST下载中心 `file_export_task`、`file_export_task_guard`、`file_export_outbox` 的55个字段定义与27条索引成员记录一致;本功能不需要重建这三表。
生产Nacos库读取到的相关命名空间均无Lastleg自营配置、Integration领星WMS配置和File `SELFOP_INVENTORY_TURNOVER` 注册。此处是配置存储事实,不代替生产容器所绑定命名空间、环境变量和最终生效配置验收。TEST当前双方BUSINESS/continuous=true、1200ms,Lastleg历史还原与销量发布开启,File有该导出类型。生产需要按独立环境填写凭据、账号/仓库范围、服务身份及导出注册,先关闭采集,不整份复制测试配置。
TEST有效销量完整覆盖2026-08-14至2026-10-15(63天):US01当前发布日统计34775行,US02 5371行,共40146行;原始订单事实分别102103/16742条。两仓当前库存均有完整已发布批次;历史日库存当前头版本分别61天,覆盖8月16日至10月15日,仍有UNKNOWN样本,应原样保留,不能把天数完整当作每个SKU均可计算。19张表的information_schema分配空间合计约16.48GiB,其中SKU日销量含索引约14.65GiB;这是分配空间/历史副本规模,不是导出文件大小。推荐审核真实来源数据的迁移闭包后复用已采数据:事实、最新资料和已发布数据,以及历史日版本引用的run/sales/anchor/stage等证据一并核对。当前40146行不能直接视为全部迁移范围;未批准复制验证/诊断样本、活动租约、失败队列或测试凭据。迁移方案与一致性窗口尚待准备,本轮没有迁移或重采。
TEST实际Lastleg镜像为 `c9186c37a543`、healthy,包含自动恢复补丁 `4e2ea8940`;Integration仍为 `99215bbb7962`。生产Jenkins最新成功且DEPLOY=true的Lastleg #14及File #18记录提交 `4dc3d1752e27`,Admin #27成功;Integration/Gateway的最新成功Job为DEPLOY=false,不能当作运行版本。本轮没有核验生产容器镜像。以生产Lastleg上述发布记录对比TEST运行提交,Lastleg目录有537个文件变化,其中195个路径在selfoperated、342个在其他路径;文件数量不等于功能数量,但证明不宜只补19表就直接换整份TEST镜像。建议先冻结四页面专用生产候选及其直接依赖;若选择整体晋级,则必须另审全部受影响Schema和跨服务合同。四页面主要部署单元为Integration、Lastleg、File、Admin;IAM权限和Nacos单列,Gateway/IAM二进制是否需要更新以候选与生产实际版本核验决定。
只读证据位于后端target:`selfop-production-comparison-schema.json`、`selfop-production-extra-gaps.json`、`selfop-production-data-inventory.json`、`selfop-production-file-columns.json`、`selfop-production-export-indexes.json`、`selfop-production-config-summary.json`、`selfop-production-job-summary.json`、`selfop-production-comparison-test-runtime.json`、`selfop-production-comparison-test-file-config.json`。原始凭据与配置正文未写入这些证据。
## 自营10月15日销量恢复与自动调度排查(2026-10-16)
10:36只读核验两仓已发布销量仅完整覆盖到10月14日;页面截止10月15日的15/30天窗口各缺一天,因此出库立方数为数量未知。同一接口截止10月14日仍正常计算,当前库存及尺寸有效。自动根任务 `LXCOL-20261016-6E2C20D1A0E5476B` 于00:05启动,前24次为正常YIELDED,00:07:18第25次才首次FAILED,错误只保存 `SELFOP_EXECUTION_FAILED`;当时已保存2493条VALID出库暂存,目录完整,两仓子任务READY/NOT_STARTED,尚未发布。不能将25次尝试说成25次失败。
用户授权先补齐昨日数据后,10:40通过正式BACKFILL接口新建账号任务 `LXCOL-20261016-E89428DC92FC4510`,查询2026-10-15整天;未执行SQL写入、发布、重启或配置变更,保留原失败批次。两轮共50次列表请求取回2493条订单,无额外详情请求。US01子任务 `LXCOL-20261016-877AA7EC5A9A4534` 于10:43:24发布,US02子任务 `LXCOL-20261016-688816429CC04BA2` 于10:43:38发布,均SUCCEEDED/APPLIED/PUBLISHED。两仓完整覆盖上界推进至2026-10-16(不含),rebuild_required=0,账号无暂停。10:44真实HTTP核验两仓15/30天窗口完整、出库立方数有值且无数量未知,需整体刷新取新上下文。
自动恢复缺口已在本次修复前的实现核实:`SelfopTaskService.fail` 对continuous出库任务不保留普通可重试资格,首个异常即DEAD;`SelfopCoordinationMapper.dueContinuous` 排除根任务DEAD的全部子任务;`SelfopSchedulePlanner.planContinuous` 将同一日request_key存在直接视为已排期,包含DEAD,之后不恢复该缺口。`SelfopExecutionService` 捕获异常后仅落通用错误码,没有保留异常类型及堆栈,当前容器日志与performance_schema历史未找回本次具体异常。因此首次异常的底层原因尚未确认,不能将之后00:09:56记录的同表死锁冒称本次00:07:18失败原因。库存和资料自动任务仍运行,问题是出库失败后的恢复链;随后按用户授权在本地补齐恢复策略和诊断:持续出库根及分仓任务在首次允许恢复的故障后最多重试3次,等待10/20/40秒,沿用原任务和检查点;YIELDED不计失败,耗尽次数不另建根绕过,限流/鉴权/未知响应保护保留。错误详情返回实际阶段、异常类型、SQLState/数据库错误码及重试决定;原始SQL、参数和响应不进入诊断。本地候选提交 `4e2ea894039fc2130c5ed78fb3c0451203191c70`,145项定向测试(包含测试源码编译)和5项Gateway路由合同通过;仅需更新Lastleg,不涉及SQL、Nacos或前端发布。用户随后授权发布该提交。Jenkins `baiyue-firstleg-lastleg-service #340` 于11:10前SUCCESS,实际Lastleg镜像标签 `4e2ea894039f`、健康状态healthy,运行镜像摘要与该构建推送摘要 `sha256:c2392fd40836096a6c1019fd5c57644496237557ce3646df8a6b860ddd5ac87e` 一致;仅更新Lastleg。Jenkins沿用本地定向测试证据,SKIP_TESTS=true仍编译测试源码。11:10真实HTTP核验采集概览、失败历史、任务详情和两仓30天库存周转均成功;两仓出库执行/发布开启,下次日销量计划为北京时间10月17日00:05,当前销量完整至10月15日(覆盖上界10月16日不含)。持续BUSINESS开启,两端最小间隔1200ms,账号无暂停,未执行SQL写入或Nacos发布。旧DEAD根和错误记录未复活/改写,昨日缺口已由上述补采发布覆盖。三次重试和新诊断格式由离线定向测试验证,未在TEST人为制造失败;本次真实错误接口读取旧记录,因此不能声称已实测自然故障后的三次恢复。发布证据见后端target的 `selfop-recovery-release-lastleg-service-4e2ea894039f.json`、`selfop-recovery-runtime-after.json`、`selfop-recovery-http.json`。
证据位于后端target的 `selfop-volume-20261016-http.json`、`selfop-volume-20261016-db.json`、`selfop-oct15-emergency-submit.json`、`selfop-oct15-emergency-observe.json`、`selfop-volume-20261016-after.json`、`selfop-volume-20261016-us02-after.json`、`selfop-auto-20261016-failure.json`、`selfop-auto-20261016-deadlock.json`、`selfop-auto-20261016-sql-errors.json`。原始运行证据不入库,不把本次手动恢复当作自动恢复已修复。
## 预约工作日历 TEST 发布与定向联调(2026-10-15)
2026-10-17 07:57 按用户本轮授权,仅发布TEST Lastleg候选`5fd74e9c8c779fa5fb9ce1fa740d0223d46a6746`(PDA候选批量查询与工作守卫慢调用诊断)。Jenkins `baiyue-firstleg-lastleg-service #349` 固定提交、DEPLOY=true、SKIP_TESTS=false,3042项测试/0失败/0错误/9跳过,SUCCESS;运行tag`5fd74e9c8c77`、imageId`sha256:41b80e3f84c6fd451fcfa0193faa58ba2fc03c6d5569aad764dd940f99a9f824`、healthy已核对,其他服务镜像未变。无SQL、Nacos或其他配置发布。发布前原两箱与领导演示8类业务详情HTTP哈希仍一致。证据`reports/appointment-latency-20261017/deployment-release.json`;新版本HTTP逐接口复验进行中,不能以构建及健康状态代替性能或完整流程通过。
发布后首次烟测9次HTTP均业务正确且不超过1秒。PDA候选首轮398.574ms、随后154.791/166.995ms,三次均188柜且完整响应哈希一致;没有预热或剔除首轮。权限60.483ms、专属PDA仓绑定59.762ms且US-LAX-01正确,最大为登录408.817ms。自有会话均注销,pendingRequests=0。证据同目录`postdeploy-smoke.json`、`candidate-payload-stability.json`、`requests.jsonl`。该结果确认当前数据规模下候选查询性能改善,不代表预排4.844秒根因已修复、写后A0409消除或全部流程已通过;两独立新柜后续流程继续补验。
2026-10-17 08:15 独立新柜复验已覆盖中转柜D1675/TSTU4687418两箱的分批、合并、正式预约、预排、实际出库、签收、结案及资源释放;直送柜D1676/TSTU8406925两箱完成正式DIRECT、提柜、目的仓实际卸货、还空,两柜均EMPTY_RETURNED。DIRECT未写海外入库;其还空接手首次A0409,不能列为接手成功。新预排首请求103.351ms,但4个新的超时仍未关闭:ACCEPT_RETURN3564.930ms/A0409,创建预约1349.450ms、装载3954.964ms、结案4370.586ms。后三项同trace的guard UPDATE分别1238/3871/4307ms;只能确定语句耗时,尚不能把第一项归为已证实锁等待。写后工作A0409与客户仓无需预约分支仍在收尾。证据同报告目录slow-call-diagnosis.json及requests.jsonl,失败和首次调用均保留。
本地另准备仅Lastleg的局部同步查询去重:同一守卫事务内复用完整工作集,100柜全量读取最多202次降至3次,保留两次最终DB回读、事实校验与全量发布;增加SELECT守卫慢调用诊断。44项直接Java回归、5项Gateway合同通过,独立审查通过;没有SQL、配置或架构切换。该3文件候选尚未提交部署,按用户要求另行汇总授权;当前HTTP证据仍属于5fd74e9c8c77,不能证明新候选已满足每次≤1秒。原两箱与演示8类业务详情08:15哈希仍一致。
2026-10-17 08:21 本轮HTTP收尾:reports/appointment-latency-20261017/requests.jsonl共490个完整响应,4次超1秒、8次不符原预期(2次脚本前置、4次同步/版本冲突、2次PRIVATE费用前置阻断);所有首失败保留,不与之前688次记录混写。停写后仅做一轮查询,日历633.678ms、摘要622.216ms、原FOLLOW_TODAY&page=1&size=8接口631.516ms、当前批次resolve665.339ms均200,不能据此消除写入期A0409和慢调用。D1675/D1676实际EMPTY_RETURNED已读回,但D1675还空发生在尾程结案之后,“尾程未完成仍可实际还空”本轮只有允许动作读回,未覆盖该执行时序;D1676还空接手正例也未成功。
PRIVATE补充柜D1677/TSTU7054389、一箱NYEXX2610170003使用本客户既有私人地址,已完成真实订单/测量/分柜,停在未确认预装、未开船。初始费用UNPRICED/NOT_SUBMITTED,预装确认A0409要求费用完成;正式fees/calculate又A0409不支持该目的地,人工报价代码入口仅FBA。未改共享价格/地址主档、未绕过门禁;客户仓无需预约及该DIRECT接手正例仍缺上游费用闭环,不能列已验证。最终自有会话全部退出、无在途请求;原两箱与领导演示8类完整详情哈希全部不变,保护证据 .codex-temp/appointment-latency-protection-after-1792196488602.json。下一次仅Lastleg局部优化发布清单见reports/appointment-latency-20261017/next-release-plan.md,仍待用户另行授权。
最终工作读取另发现D1675提柜事项仍PENDING;此项不能归因于缺时区。代码核对表明工作事实只认船节点PICKED_UP,而终端详情在缺该节点时会用unloadingCompletedAt推定actualPickupAt;缺时区本身只增加SOURCE_TIMEZONE,并不把已有实际节点降为PENDING。已有本轮记录核对actualPickupAt与unloadingCompletedAt均为2026-10-17T08:05:18.43,TRANSFER三阶段没有提交PICKED_UP节点;因此该实际操作仍未覆盖,不应默认纽约/洛杉矶时区或用终端推定值宣称工作项已完成。该口径/覆盖缺口独立于本次同步查询去重候选。
2026-10-17 08:38 用户再次授权后,已仅提交并部署3文件同步局部优化,commit732cf99007c835e7062b9f9f41a5da9ee91c8174。Jenkins Lastleg #350固定SHA、DEPLOY=true、SKIP_TESTS=false,完整3043项/0失败/0错误/9跳过,SUCCESS;TEST Lastleg tag732cf99007c8、imageId sha256:123b3d3f8e782c8b87b1a01c8dc5185d84c025d682bb6ae3d8d0b9b2dc38435f、healthy已核对,其他服务镜像未变。没有SQL/配置/其他服务部署。发布前保护8类详情仍不变;独立新轮证据目录reports/appointment-latency-20261017-round2,准入deployment-release.json已生成,HTTP复验开始。旧490和688证据保留,不以构建成功替代每次≤1秒或流程完成。
2026-10-17 08:52 第二轮定向HTTP收尾:上述独立目录累计386个完整响应,1次超过1秒、8次业务结果不符预期,0未知结果、无在途请求,自有会话已退出。唯一慢调用为DIRECT还空事项SAVE_REQUIREMENT 1842.448ms/A0409,同trace的guard SELECT计时1778ms;该证据定位到加锁读取语句,不能单凭日志确定具体持锁事务。8次不符包括1次头程测量版本冲突、1次该事项版本冲突,以及6次来源范围/需求同步等待;全部首次失败保留。当前729个已开船柜分8页同步,写入期间日志另记录来源分页失效和需求版本变化后重新扫描,整页等待仍未解决。
本轮独立中转D1678/TSTU6010956已按车队→提柜预约→真实PICKED_UP→PDA两托各一箱收货执行;库存仍2箱且尚无预约/排车/车次时实际还空,再完成预约2箱分1+1、合并2箱、预约确认、新预排、拣货、发车、签收、结案和资源释放。最终工作PICKUP/收货/还空完成状态与权威实际事实核对通过;缺来源时区仍单列,不伪造默认时区。独立直送D1679/TSTU4672300仅补齐还空要求、交接与接手成功,未执行其实际提柜/卸货/还空;完整直送实际执行仍引用上一版本D1676证据,不能混称本轮全部流程重跑。PRIVATE客户仓无需预约链仍被原费用前置阻断,未新增PRIVATE或更改报价规则。
本轮创建预约113.883ms、新预排103.445ms、装载75.332ms、结案71.534ms;停写后单轮日历642.743ms、汇总630.738ms、FOLLOW_TODAY原接口596.760ms、批次resolve688.955ms均业务200。这些成功不抵销写入期失败,也不代表全系统每个接口、全部异常分支或页面点击通过。最终原两箱与领导演示8类详情哈希仍一致,根证据`.codex-temp/appointment-latency-protection-after-1792198354979.json`;运行版本仍732cf,未追加部署。
另有未部署的两文件局部候选:首次事实读取仅保留运输事项供车次归并,保留TRIP_LINKED退役成员及第二轮全部活跃事实;不改全量发布、守卫锁、事务、SQL或配置。同时新增固定字段的同步阶段耗时摘要,不输出业务载荷。7类46项Java定向测试及独立审查通过。候选尚未提交/部署,实际性能收益未验证;按本轮要求需另获TEST Lastleg发布授权,不能把本地回归视为1秒目标通过。
2026-10-17 09:18 上述两文件候选已获用户新授权并提交部署:commit81e4123b109c3f0327b19d84be98428b3e1fb034,Jenkins Lastleg #351固定SHA且SKIP_TESTS=false,3045项/0失败/0错误/9跳过、SUCCESS。运行tag81e4123b109c、imageId sha256:d78f2d3bb57a435299324b1149c478a884807243b9a5f7ca865b3973fedbdf58、healthy已核对,其他服务未变;无SQL或配置变更。独立证据目录reports/appointment-latency-20261017-round3,复用D1679未完成还空事项作独立备注更新,D1678只读,旧386/490/688不覆盖。首个约100秒窗口51个完整HTTP响应均≤1秒、最高884.199ms、10次写均成功;其中首写869.566ms与SELECT722ms按trace对应,确有同步交叠。5项完成事实及状态不变量核验通过,但不能由该窗口推定所有接口/所有同步起始时机都达标;正在补最多两次更贴近同步起始段的有限验证。
2026-10-17 09:27 同步开始段补验首条即复现超过1秒,已停止第二条:新增5个HTTP响应均业务200、读回正确,其中SAVE_REQUIREMENT1282.721ms;精确trace e77cfb94d3933dd55a71f8b1ba645328对应guard SELECT1184ms,同时同步方法1351ms,生成事项787ms、活跃事实492ms。此证据比自然分散窗口更直接暴露剩余等待,最终本轮合计56请求/1慢/0业务失败,所有原始记录保留,不能标记1秒目标通过。初步定位生成阶段逐需求重复读取仓库目录,正在本地实现单次生成作用域内成功目录结果复用;不调整事务、锁或全量同步架构,尚未提交部署。
2026-10-17 09:35 上述局部目录复用候选完成,5个生产文件与6个测试/夹具文件;单次生成作用域按需复用成功目录结果,下次同步与独立命令重读,失败不缓存,来源及客户等校验保留。9类51项Java测试、12项依赖检查通过,独立审查无阻断;首次测试夹具构造错误已修正,原日志保留。此时尚待新授权;后续发布结果见下段,不以本地测试推断线上1秒达标。
2026-10-17 10:07 用户新授权的11文件已精确提交部署:2971d6f7f0baedbf00dbb7941b1d846a736224a4,Jenkins Lastleg #352 SUCCESS,3049项/0失败/0错误/9跳过;实际tag2971d6f7f0ba、imageId sha256:bf26c422a7f3d54dc23e6ae0f521cbae87ac03d2329b24e91477e826732d2677且healthy,其他服务未变。没有SQL、配置或架构变更。新证据reports/appointment-latency-20261017-round4共13HTTP/9模板,1次SAVE_REQUIREMENT1243.950ms、0业务错误;同trace68344901746bc9ce410290f687e6e0ba守卫SELECT1088ms,与同步1168ms(生成445ms、活跃事实635ms)相交叠。目录去重降低生成阶段成本,但仍未达到每次≤1秒;不再执行第二次重复补验。日历720.051ms、FOLLOW_TODAY683.819ms、summary683.800ms、resolve688.220ms均200,5项完成事实及状态不变量通过。1登录/1注销、pending/UNKNOWN0;最终8项原两箱/演示保护哈希未变。此轮仅局部性能复验,PRIVATE费用、直送独立样本后续实物节点、全量接口及页面验收仍未关闭。
2026-10-17 10:15 后续形成4文件本地诊断候选:拆分完整工作状态读取与事实适配耗时,并汇总Firstleg及固定业务提供者的调用次数、输入量和耗时,不改业务、锁、事务、缓存或批量。32项Java与5项网关检查通过,独立审查无阻断;此时等待新授权,后续结果见下段。诊断本身不改善性能。
2026-10-17 11:47 用户已授权上述诊断并完成精确提交部署662dead053f961d6f14aaeea5edb38c76778a822,Jenkins Lastleg #353 SUCCESS,3053项/0失败/0错误/9跳过;运行tag662dead053f9、image sha256:e061ee6000a4d03010cbdca8cc12f4f6f7f6823d628b0c54a1b3bed82c72af60、healthy,其他服务未变,无SQL/配置/架构变更。reports/appointment-latency-20261017-round5独立13HTTP仍有1次SAVE_REQUIREMENT1114.641ms,全部业务成功、5项状态语义通过。trace fe13883a1dc6e9a8fac9dd69f038e084匹配守卫SELECT937ms,同窗sync1055ms内生成400ms、活跃事实559ms(工作表20ms、适配539ms);适配诊断中Firstleg直接6调用1064项270ms、送仓Delivery4调用767项199ms、收货38ms、运输14ms、直送运输7ms。已能排除该窗口工作表读取或运输提供者为主要成本,但尚未关闭全量同步写等待。日历800.030ms、FOLLOW_TODAY681.043ms、summary667.720ms、resolve694.736ms均200。原两箱/演示8项哈希未变,1登录/1注销,pending/UNKNOWN0,第二次补验未执行。采样结束;按用户持续修复要求,本地继续生成阶段逐柜/逐需求查询的批量化实现和回归,保持原守卫、事务及全量发布机制,不改数据库结构。该后续候选于12:10完成本地验证:21文件(11生产+10测试/夹具),13类去重124项Java及17项网关/依赖检查通过,独立审查无阻断。冻结清单为工作区.codex-temp/appointment-generate-batch-frozen-20261017.json(SHA256 C5188B42BD512387B4BDCC99ABA6368AD6178E829DBECEBA8430A7212ADD2849),尚未提交或发布,需另行授权;目标MySQL运行及实际性能仍待发布后复验,不以本轮样本或诊断发布宣称全部接口≤1秒。
2026-10-17 用户授权21文件后曾部署b0acbfbb(Jenkins354),但首个详情1319.454ms且新增history查询导致后台GENERATE持续失败,已按用户要求停修复。随后经分别授权,Jenkins355 SUCCESS将TEST Lastleg恢复到662dead053f961d6f14aaeea5edb38c76778a822(3053项/0失败/0错误/9跳过),容器healthy、其他服务未变;05:37:11 UTC整轮同步complete=true/failedStage=NONE。恢复仅5次HTTP含登录注销,日历856.325ms、汇总705.212ms、FOLLOW_TODAY673.417ms均200;保护另10次,原两箱/演示8项哈希不变。限定同应用驱动/连接只读诊断已证实MySQL HY000/1267:CAST/UNION派生列utf8mb4_0900_ai_ci与三业务列utf8mb4_unicode_ci冲突,原SQL及三隔离EXPLAIN均复现;H2未覆盖该差异。只执行3 SELECT+4 EXPLAIN,无业务写、DDL/DML或配置变更,探针已清理。首探针目录权限失败且SQL未开始,换自有临时目录重新审核后完成。详情全量事实路径及每次<1秒目标仍未关闭;本次恢复成功不能替代性能验收。所有修复/新发布/业务验收已停,Git仍保留b0源码证据。最新证据reports/appointment-recovery-20261017;失败证据reports/appointment-latency-20261017-round6保留。
2026-10-18 12:03 本轮用户授权的18文件诊断已提交并部署TEST Lastleg:最终commit `66a0beb6539242d77a3155fde5e2a6380c11085c` 相对恢复基线662dead仅10生产+8测试;未带入b0批量化修复或其他任务未提交代码。首次Jenkins #356因新增测试Mapper缺注册注解而在测试阶段失败,未部署;仅补该测试两行后,#357固定SHA、SKIP_TESTS=false,3073项/0失败/0错误/9跳过、SUCCESS。运行tag `66a0beb65392`、image `sha256:9802e400c8b9eb2678e0fc9e9a17bdb17aad16f004fb7bbfb2b802149bd86b5e`、healthy,其他服务未变;无业务逻辑、配置或数据库操作。有限日志窗口确认3轮完整同步完成,28条同步摘要均未失败、未见ERROR,不能由该窗口推定长期无故障。
本次有限诊断共10次HTTP(6业务GET、4登录注销),首个详情1101.861ms超过目标,服务端1065.505ms;后续详情629.096/635.852ms、日历665.993ms、汇总654.116ms、FOLLOW_TODAY643.532ms均业务成功,原慢记录保留。首慢主要阶段为活跃事项事实读取655.072ms(其中Firstleg265.022ms、送仓283.508ms,两者为子项)、工作状态读取79.719ms、投影60.683ms;进入事务业务层前176.391ms尚未细分成因。六条GET连接获取及守卫读取均不足1ms,本批慢详情不能归因于等连接或守卫锁;源码及调用量确认单详情仍走全体活跃事项事实汇总。后续事实读取仍483–526ms。旧写请求守卫长耗时的具体数据库等待原因、首次入口额外成本及全部接口每次<1秒仍未闭环。保护核对另20次只读HTTP,本轮前后8项完整响应哈希一致;原车次因预计结束时间已过而产生的历史动态资格提示差异在部署前已存在,未修改该数据。全部采样已停止、会话已退出,未执行业务写入。下一步仅提出详情按关联范围读取的局部候选及时间估计,尚未实现,部署、后续采样及数据库操作均须按用户要求另行授权。证据:根目录 `.codex-temp/appointment-diagnostic-20261018/final-release-manifest.json`、`.codex-temp/appointment-diagnostics-final-analysis-20261018.json`、`.codex-temp/appointment-diagnostics-protection-result-20261018.json`。
2026-10-16 逐接口耗时复验尚未通过:独立样本 `LAT1016-8280648` 的首批417次HTTP保留完整响应耗时,10箱与6箱两车已完成预约分批、排车、拣货、发车、签收、结案及资源释放;预排一次4844.086ms,PDA收货候选三次1691.343/1527.695/1476.326ms,另12次工作日历、待办或关联解析返回A0409。快速错误不计业务通过,历史无计时闭环不计本轮性能通过。该批实际TEST Lastleg为`e4bf57314662`、healthy;证据见后端`reports/appointment-latency-20261016/baseline-handoff.json`,417次原始基线冻结,后续扩展另存。尚不能宣称所有分支和每次请求均在1秒内。
本地待发布修复基于`af97cd17d`:PDA收货候选改为按500条分块批量读取,保留整柜、客户、仓库、会话及数量边界;另加工作守卫UPDATE慢调用诊断,不改变锁、事务或全量同步机制。86项直接Java测试、5项网关路由及12项依赖检查通过,独立静态审查无阻断。预排慢因尚未证实,诊断日志不等于修复;A0409来自需求版本变化后等待完整扫描,持续写入可能使跨页扫描重新开始。本轮尚未部署,未执行SQL或发布配置;仅申请TEST Lastleg部署授权。用户要求保留D1672原两箱及D1674领导演示,最近8类业务详情HTTP哈希均未变;继续使用全新独立样本补流程,不消费保留数据。
同轮扩展冻结为681次/97个方法与路径模板,原4次超时及12次A0409保留,另4次脚本前置/预期错误原样记录;新增独立货后总20箱,19箱完成三车真实执行,余1箱无日期待办。补齐跨客户共约改期/取消/分别重约、旧约号冲突、后送再部分分配、空车取消、来源守恒、真重放/旧版本、跨客户拒绝及DST异常;细表见`reports/appointment-latency-20261016/per-interface.md`,覆盖与缺口见`extended-final.json`。停写后只加一轮7次只读及认证请求(与681分开存为`postwrite-read-once.json`):日历662.397ms、摘要624.783ms、全部待办667.647ms、今日跟进755.068ms均成功;独立转运批次解析112.741ms但A0404,因为该样本未关联新已开船柜,不能冒称日历事项闭环。列表恢复不等于写后等待问题已修复。新已开船柜、中转柜级事项、整柜直送/还空转交、工作事项写命令及部分失败注入仍未完成本轮逐接口验收。22:13:59再次只读核对各运行镜像未变;22:13:16保护样本8类业务详情仍与基线一致。
2026-10-15 23:58 用户明确当前均为测试假数据,无需追索真实预约、签收或历史时区材料。此前将这些材料列为测试验收阻塞的判断撤销;它们不是本轮技术验收完成前置,不表示原合成预约已确认或已真实发运。总控直接回读现有数据:受保护两箱12表哈希仍不变,三列体积结构仍与已发布版本匹配;新自提单25项只读HTTP再次通过,客户/仓名称、目的仓ABE4、1箱/1kg/0.008m³和3件一致,验证会话退出。当前Firstleg499/Lastleg339/Order187/Admin624/Client417实际提交、镜像和healthy一致,无活动构建。复核默认分组11项、三种自提及纯SKU直接检查、四端指定尺寸页面/请求证据和最终36次<1秒性能证据后,本轮授权的测试开发与验收完成,无待用户补交材料或新增部署/SQL授权项。复验见 `reports/relabel-metadata-readonly-TEST-METADATA-READ-20261015-2358/report.json`,最终审计见 `reports/appointment-browser-20261015/completion-final.json`。下文早期外部材料阻塞记录仅保留过程,不再代表当前结论。
最终性能门禁补齐:保留#339首次12次原始烟测,再补2轮24次,合计36次全部HTTP200/业务200、<1秒,最大973ms;FOLLOW_TODAY为796.8/654.4/567.9ms,所有返回语义、顺序和总数同#334原基线。两次独立会话均正常退出,没有丢弃首轮或超时样本。完整三轮比较门禁passed=true,证据 `reports/appointment-search-performance-20261015/http-timings-339-complete.json`、`comparison-339-complete.json`。原12次比较报告passed=false仅因检查要求每类至少3样本,其逐项语义均一致、实测均<1秒;保留原报告,不将单轮烟测冒称完整门禁。
21:52 最终补验收口:SKU目的仓改为读取换标出库冻结物理行,普通退货出库规则不变,172项定向测试全通过;Lastleg #339 精确提交 `a3a5862f890073c75f9444886dbc89dd3ecfc79b` SUCCESS/healthy,Admin保持#624。原新建样本只读复验25/25通过,SKU/物理行/派送头均为ABE4,名称与1箱/1kg/0.008m³/3件保持,未新增业务写入;独立会话退出成功,报告 `reports/relabel-metadata-readonly-TEST-METADATA-READ-20261015-2150/report.json`。1920×1080/scale1页面复核显示ABE4,详情只发1个GET/51ms,注销200/54ms后关闭临时页并恢复视口;证据 `reports/appointment-browser-20261015/admin-624-lastleg339-metadata-sku.png` 及同目录 `admin-624-lastleg339-final-network.json`。最终12次九类查询与三路并发烟测全200且<1秒,最慢973ms,FOLLOW_TODAY单请求796.8ms,完整返回语义仍同#334基线,见性能目录 `http-timings-339-final.json`、`comparison-339-final.json`。此前#338的36次完整计时保留,不将12次说成36次。原两箱12表哈希不变,见 `protected-metadata-final.json`;原批次/车次消费者回读正确、仍PENDING/actual为空。技术补验无剩余部署或SQL授权项;原业务链仍缺对方预约确认号/时间窗/证明、真实发运签收证据及原收货当地时间的时区依据,不能伪造材料或据合成样本宣称真实履约完成。
21:46 同轮退货自提补验:Lastleg #338 精确提交 `b8739eebf010e48336e83f64cb26fc995ba08a1e`、Admin #624 精确提交 `148085286ded26483201553101d73c156638b6eb` 均 SUCCESS/healthy;新建退货直接出库一次读取权威客户/仓名称,逐实物箱冻结重量与体积,多 SKU 只在稳定首行承载一次物理量。缺测保持空值,三张表的体积列已按授权精确调整为可空,未改业务行;两套初始化基线同步。299 项定向测试、12 项依赖检查、Admin 14 项及构建、SQL 28 项和索引 1,124 项通过。复用已盘点独立退货箱新建一张亚马逊自提换标单,37 项真实 HTTP 检查通过,派送 `DL-WH-20261015-006785` 正确显示客户、仓库、1 箱/1kg/0.008m³,3 件 SKU 守恒,唯一出库且幂等,三个自有会话退出、无盘点会话;未拣货或发运。报告 `reports/relabel-metadata-TEST-METADATA-20261015-2144/report.json`。原 D1672 两箱仍只读,12 表哈希未变。Admin 1920×1080/scale1 列表业务号完整显示、客户/仓名称和详情测量正确;列表/筛选/详情各一次业务 GET,96/57/48ms,SKU 切换零请求。页面另发现 SKU 目的仓仍读原退货箱而非换标出库冻结值,正在修复,不能据上述通过关闭该显示缺口。
同次 #338 发布后九类查询三轮及三路并发三轮共 36 请求均 HTTP200/业务200 且小于1秒,最高808.4ms;FOLLOW_TODAY 为780.4/716.8/733.7ms。完整返回内容、顺序及总数仍与原 #334 基线一致,证据 `reports/appointment-search-performance-20261015/http-timings-338.json`、`comparison-338.json`。此结论限定当前 TEST 数据与并发方式。
本轮按用户授权完成匹配 SQL 与四项发布:IAM #177 为 `4f9a63fb0136fe3fbc18d2e1360ddcabeaed9eb0`;Firstleg #496 为 `23ce486539b268ebab6f172fa822b843c568e246`;Lastleg #332 为 `204ae1073700e5e4e84bbe897c2316c515fe8e41`;Admin #619 为 `60378fea9b98648bc4973a500e886b947d0eafb7`,均 SUCCESS,容器健康与实际提交已核对。Admin healthz 和入口引用的 60 个 JS/CSS 资源均 HTTP 200,最终运行清单见根 `.codex-temp/appointment-final-release-runtime.json`、`appointment-admin-final-assets-619.json`。Gateway、Nacos 本轮未变更。Admin 首次 #616 因 TS7006 构建失败,修复回调参数类型后发布成功,失败构建未替换运行容器。
Firstleg 新增直送卸货表,IAM 新增预约工作管理、直送卸货确认两项权限及平台管理员关联。用户单独授权旧预约精确重建后,17:12:19 在 Lastleg 停写窗口再次核对 3 主单、22 明细、7 命令历史,按当前模型重建这三表并创建核实资料表及五张工作相关表;订单、计划和库存原业务表不在重置范围。匹配版恢复后已产生新预约和事项,旧重建脚本不得重放。SQL 执行及结构证据见根 `.codex-temp/appointment-test-reset-executed-20261015.json`、`appointment-test-schema-after-20261015.json`。
全量同步现场修复了已知货源配置前提缺失导致整轮中止,以及捕获业务拒绝后内层事务仍标记回滚的问题;不支持预约的来源保留待核实事项,其他错误和远端故障继续拒绝。真实 Spring 事务代理回归在内的 20 项定向测试通过。17:41:55 同步初始化完成,事项 3,295 条,需求版本与同步版本均为 6;17:47 独立新会话通过全局摘要、月日历、事项分页 HTTP 200/业务 200,随后退出。该快照数量不是固定业务总量,证据为根 `.codex-temp/appointment-http-smoke-work-1792057640889.json`。
17:58 慢查询修复已随 Firstleg #496 发布:事实批次共用一次权威来源清单,消除逐柜重复全量扫描;下一批重新读取,不跨请求缓存事实。100 柜/200 事项的清单调用次数、逐柜身份和已移除来源拒绝测试通过,相关 9 项测试及 5 项网关合同通过。真实全局摘要/月日历/事项分页由 25.98/27.02/26.79 秒降为 7.74/7.00/7.59 秒;按页面首次并发的摘要和日历均约 8.1 秒,低于当前 Admin 15 秒超时,均 HTTP 200/业务 200。证据为根 `.codex-temp/appointment-http-smoke-work-1792058338340.json` 及 `appointment-http-smoke-work-concurrent-1792058364623.json`;这只是当前样本和并发模式的定向计时,不是全站容量验收。
同一两箱合成样本 `FL2110663764278312961`/`BYHK2610150001` 已通过独立核实 2→1 且原订单不变、恢复 2、取消及同键重放、2→1+1→2 拆分合并、数量守恒、旧版本拒绝与替代链核对;保留预约 `AP-20261015-450E69B7DD28`,稳定键 `FBA_APPOINTMENT:2110665331459538945`。原货柜 `TSTU8836696` 的两箱已通过正式 PDA 接口实收,托盘 `D1672-126-001`;同一实物/来源/批次实际生成排车 `DS-WH-20261015-200770`,绑定车次 `TR-1CE18EF35FF6419E`,回读数量 2、状态 PLANNED。当前预约仍 PENDING,无对方确认材料;未伪造外部确认号来完成发车签收,实际发车/签收和全部装载前置满足后的发车拒绝分支未覆盖。
工作跟进 11 项 HTTP 检查通过:匿名/客户域拒绝、只读平台身份不能写、正确 Auth 主体负责人、只读无写入、同键重放不新增历史、异载荷和旧版本拒绝。首轮 fixture 误用 IAM 档案 userId,返回 S0503;经内部只读探针确认目录实际 A0404,原事项仍版本 0、历史空,改为准确 authUserId 后复验通过,失败报告保留。前端同时修复普通 JSON.parse 舍入 19 位 JWT 数字账号 ID 的真实缺陷,复用既有安全整数解析;真实解码→登录/恢复→跟进表单 ownerId 回归通过。Admin 最终全量 392 文件/3,197 项、类型检查和构建通过;测试首次放在 core 引用业务组件触发依赖门禁,移到业务测试目录后复验通过,未放宽门禁。
原主档 ABE4=`UTC-5`、US-LAX-01=`UTC-8` 分别阻塞路线生成和已关联车次事实读取。两仓的地址逐项匹配当前 `warehouse-public-master-data.sql` 基线后,仅通过正式 Warehouse API 分别修为 `America/New_York`、`America/Los_Angeles`,其他业务主档字段和能力保留,未执行额外 SQL 或全量时区回填;原预约按当前版本更新刷新地点时区、稳定批次不变,原车次 UTC 计划时间未改。18:18:42 全量同步追平需求/同步版本 11/11;18:20 最终三个全局查询均 HTTP 200/业务 200,耗时 7.97/7.21/7.44 秒。18:22 总控独立新会话回读原柜事项及运输详情,TRANSFER 路线、原稳定批次、原车次及送仓前置关联全部准确,运输仍 PENDING、actual 为空,未伪造完成;会话退出成功。证据为根 `.codex-temp/appointment-http-smoke-work-1792059613885.json`、`appointment-http-smoke-consumer-1792059738187.json`。原接仓事项按真实收货完成,原记录只有未带时区的当地时刻,因此保留 SOURCE_TIMEZONE 待核实提示,不用修正后的当前仓时区倒推原实际时刻。
真实排车联调发现默认装车分组已生成但托盘锁保存空分组的问题,重试还会额外建组。Lastleg #332 修为保存实际分组 ID、复用唯一分组、多组时要求明确选择、同锁重放不重复建组且不能悄然换组;44 项排车及批次绑定定向测试、5 项网关合同通过。18:48 已按用户追加授权用独立合成样本完成默认分组真实 HTTP 复验:新订单 `FL2110680680845869058`、入仓码 `BYHK2610150002`、新柜 `TSTU5125251` 经正式业务 API 和 PDA 实收形成托盘 `D1673-126-001`,2 箱;未创建新预约或车次。计划转换后的 RESERVED 托盘不可直接作为候选,因此实际补齐实收后验证,未伪造库存。首轮发现默认容量 500 与正式 15/30 托规格不符,已修默认 30、分组预排拒绝非法容量,Lastleg #334 精确发布 `2631bd3af42d8cfa0598cb7eb36537c495bf6f55`,SUCCESS/healthy。46 项排车及批次绑定测试、5 项网关合同通过;最终 `reports/default-group-independent-20261015/report-r2.json` 的 11 项真实 HTTP 检查全部通过,包含容量 30、首次绑定、同载荷重放不增组、多组未指定拒绝、不得跨组移锁、解锁释放和 2 箱候选恢复。首轮及失败记录保留,不覆盖旧 `default-group-http-retest.json` 的历史未验结论。
本次独立样本验收结束后,3 张自建草稿均 RELEASED,相关活动托盘锁 0、草稿分组 0、新排车明细 0;首轮 38 次和最终复验 1 次自有登录均正常退出,独立实物样本保留。原两箱样本未写入,12 张相关表的定向全行 SHA256 前后完全一致,原排车 HTTP 详情也一致;18:48 总控独立回读原批次、车次和送仓依赖仍正确,运输 PENDING、actual 为空。证据为根 `.codex-temp/appointment-protected-before.json`、`appointment-protected-after.json`、`appointment-default-group-final-cleanup.json`、`appointment-default-group-runtime-334.json`、`appointment-http-smoke-consumer-1792061303166.json`。复验开始时另一个业务发布 #333 处于切换,曾读取到 503;新来源同步期间曾读到 A0409,均保留证据,健康及同步完成后回读通过。本轮未执行新增 SQL;#333 与 Admin #620 为其他业务发布,不以本轮结果代替其验收。
19:14 搜索性能定向验收通过:此前全局查询 7–8 秒只证明低于前端超时,不能代表交互性能合格,精确 FOLLOW_TODAY 此前也未单独计时。现按用户小于 1 秒要求,Firstleg #497 精确发布 `abf4e45e398d4e9549ad32d0cab98645190e5f3c`,Lastleg #335 精确发布 `097bec33b1b99eed4f23cca68bfbc5b94959d1da`,均 SUCCESS/healthy。Firstleg 将逐柜货源、路线、节点、历史及卸货事实改为批量读取;Lastleg 批量读取接仓、核实资料、来源及预约派送事实,并在权威事实读取前筛选安全的候选条件。没有跨请求事实缓存,没有变更权限、HTTP 合同、Schema 或执行新增 SQL;最终权限、实际状态、准确日期、关键词、总数及分页仍以实时事实计算。
同一 TEST 数据与平台身份,经统一 Gateway 记录从发起请求到响应体读取完成的耗时:九类查询各三轮,加 FOLLOW_TODAY/全类型日历/摘要三路同时请求各三轮,共 36 次 HTTP 200/业务 200,全部小于 1,000ms;包含部署后首个计时请求,没有丢弃慢样本。精确 `items?view=FOLLOW_TODAY&page=1&size=8` 从 #334 的 7,403.2ms 降为 906.1/713.1/642.1ms;三路并发各请求为 778.9–820.9ms。ALL、OVERDUE、UNDATED、REVIEW、关键词、全类型日历、仅提柜日历及摘要均覆盖;36 次完整返回语义与修复前逐项一致,包含记录顺序和总数。证据为根 `.codex-temp/appointment-search-baseline334-1792061553965.json`、`appointment-search-candidate335-1792062808860.json`、`appointment-search-comparison-1792062834692.json`;脱敏发布与汇总副本位于后端 `reports/appointment-search-performance-20261015/`。本结论限定当前数据规模及单请求/三路并发模式,不等同于任意规模容量保证。自有会话均退出;原两箱 12 表全行哈希仍不变,原批次/车次消费者 HTTP 回读通过,见 `appointment-protected-after.json`、`appointment-http-smoke-consumer-1792062841921.json`。
性能修改的 Firstleg 5 类/16 项、Lastleg 157 项定向回归及全部目标服务测试源码编译通过;原源版本哈希形状、单项/批量事实等价、客户与批次隔离、缺失失败和时区边界均有定向检查。完整 Lastleg 历史回归曾暴露 8 项断言失败、6 项错误、7 项跳过;其中车次权限 fixture 缺 Mock、预约分页旧合同断言已修并纳入上述回归,其余退货/换标/Schema/自营失败仍未关闭,不宣称全量通过。
工作与实物证据统一位于后端 `reports/appointment-producer-ADMIN-API-20261015092515485/` 的 `stage-evidence.json`、`physical-chain.json`、`origin-timezone-correction.json`;最终 `final-work-consumer-proof.json` 的 8 项原样本关联/实际事实检查通过,`session-cleanup.json` 确认 7 组本轮自建会话最终均已退出,无剩余。工作权限/幂等报告为 `reports/appointment-work-aw-route-ownerfix-20261015092515485/report.json`。验收脚本已同步当前取消接口、分批守恒、Long 字符串计数及可省略空字段合同,4 文件/33 项通过,提交 `caff693ad` 仅含脚本,无需再次发布服务。历史 producer 报告保留一条已修正并复验的脚本数量断言失败,不宣称原报告全绿。HTTP、静态资源和自动测试不替代 1920×1080、100% 人工视觉验收。
### 同轮内置浏览器补验与发现项
用户另行明确授权 AI 内置浏览器操作,Admin/Client 使用 1920×1080、缩放 100%,国内/海外 PDA 使用 390×848。Admin #621 发布 `9f51392754e57708c223bd3f7f0ee7c21d16b11f`(合并后 3,204 项测试、typecheck/build 通过),恢复覆盖式工作面板、展开/收起、固定标题和分页、紧凑日历工具栏。真实浏览器进一步发现长操作按钮两行行距只有 13px,修为 20px 且高度自适应;Admin #622 精确发布 `baee81f4594893a7ecb2d1d52c72db62fddc1815`,SUCCESS、healthy、healthz 正常。该小修的 50 项定向测试和 typecheck 通过,发布构建通过。
Admin 浏览器复验覆盖全局今日需跟进、分页、关键词、只读详情、关联工作展开、月/周切换和当天明细。各动作仅发起对应一条业务查询;首次页面并发读取日历与摘要各一次。#621 实测日历/摘要 677/678ms、今日跟进 627ms、第二页 629ms、关键词 609ms、详情 660ms、周日历 679ms、当天明细 685ms;#622 最终初始日历/摘要均 658ms、今日跟进 595ms,均 HTTP 200,无截断取证。最终按钮与内部文本计算行高均 20px、两行高度 54px,日历未被侧栏挤窄,页面无横向溢出。证据位于后端 `reports/appointment-browser-20261015/` 的 `network-admin-621.json`、`network-admin-622.json` 和对应 1920 截图。
两 PDA 以当前源码 H5、进程级明确 TEST 代理验收,未覆盖原 `.env.local`。国内登录、仓库与 47 条待拣任务列表正常;海外登录、仓库、排车列表及原两箱排车详情只读正常,详情仍为 2 箱、已拣 0 箱且调度审核前不可拣货。单个页面操作对应一条业务查询,两个自有会话 logout 均 HTTP 200,已关闭标签和本轮自有 H5/HBuilder 进程,两个 PDA 源码均无修改。证据为同目录 `network-pda.json`、`domestic-*-390.png`、`overseas-*-390.png`;本地准备及清理记录为根 `.codex-temp/pda-h5-readiness-20261015.json`。这只证明所列 H5 页面与 TEST 接口,不替代 Android 扫码硬件或实体作业验收。
Client 同轮发现列表已排车而详情仍显示待海外同步、计费摘要未消费同页正式计费量、智能装柜预装确认壳被展示为“0 项”。已修复:Order 详情增加同客户精确订单权威 progress,Firstleg/Lastleg 现有内部提供方支持最多 200 票精确范围,拒绝空范围、越界事实及依赖故障;Client 使用详情进度、正式计费量和预装确认状态,不再使用壳内明细数。Order 386、Firstleg 21、Lastleg 9、Gateway 5 项相关测试通过;Client 合并线上基线后 593 项、typecheck/build 通过。Firstleg #498、Lastleg #336、Order #187 均发布 `ae33780daea600929e740496194658e5ae0ece75`;Client #417 发布 `d89830fe4163cdb62612c31f674e6a6ae75183d6`,实际 checkout、镜像及健康全部一致,见 `reports/appointment-browser-20261015/final-release.json`。
发布后真实 HTTP 12/12 通过:原票 detail.progress 与列表均 scheduled/partial=false,重复详情一致;2 箱、23kg、0.1018m³ 和正式计费量 17.0006 KG 保持;其他客户详情 A0404 无数据、列表无原票,两个会话退出成功。报告 `reports/merchant-detail-progress-http-20261015/report-1792065460639.json`。Client 浏览器 1920×1080、scale1 最终摘要显示“预装确认:已确认”“计费重量:17.001 kg”“后续履约:已排车”,无横向溢出。首次进入详情触发客户资料、资质、国内仓目录、入仓码规则四个公共初始化 GET,以及订单详情、费用、图片各一次 GET,无重复;后三项为 157/103/56ms。证据 `client-417-detail-network.json`、`client-417-order-detail-1920.png`。本轮浏览器会话 logout HTTP 200/46ms 后关闭标签,见 `client-417-logout.json`。原两箱仅只读,12 表哈希仍不变,无新增 SQL、拣货或预约业务写入。
19:58 性能复验尚未再次收口:#336 部署后与同机 Order 构建重叠的一轮 36 次请求中,27 次单请求均小于 1 秒,9 次三路并发为 1.12–1.23 秒;不直接把构建重叠认定为唯一原因。全部发布结束后的原样 36 次复测中,FOLLOW_TODAY 单请求 646.2/669.2/616ms、并发 777/703.2/712.6ms,关键词首轮 1011ms,严格门禁仍未通过;其他返回语义均与原基线一致。失败证据保留于 `reports/appointment-search-performance-20261015/comparison-336-build-overlap.json`、`http-timings-336-steady.json`,继续定位余量,不以重复重跑到通过掩盖超标样本。
20:06 最终性能复验通过:Firstleg 每批来源查询原为全量聚合后 Java 过滤,现按柜次 ID 在 SQL 聚合前收窄;全局范围版本、资格条件、日期和关键词仍按原实时事实校验,无跨请求缓存。新旧查询逐字段等价及直接上下游共 21 项、Gateway 5 项通过,独立代码审查无阻塞。Firstleg #499 精确发布 `4277601999c823768a77c92d34651847c03f69a6`,SUCCESS/healthy,其他四发布单元保持上述版本;两个 Jenkins 节点均无活动构建后执行同样 36 次请求,全部 HTTP 200/业务 200、小于 1000ms,最高 819.8ms,包含首轮未预热样本。FOLLOW_TODAY 为 681.3/653.2/574.9ms,关键词为 670.2/580.3/579.8ms;三路并发最高 819.8ms。完整返回语义、顺序和总数与 #334 原基线逐项一致;此前两轮失败证据保留,不混入最终通过声明。证据为 `comparison-499-final.json`、`http-timings-499-final.json`、`runtime-final.json`(同一性能报告目录)。该结果限定当前 TEST 数据量和单请求/三路并发,不承诺任意负载。20:06 原样本 12 表哈希保持不变,消费者回读原稳定批次/车次/送仓依赖正确,所有本轮自有会话退出,无新增 SQL 或业务数据写入,见 `protected-sample-final.json`、`consumer-final.json`。
退出取证更正:Admin 首次点击退出后,总控过早关闭标签,只捕获到请求,不能据此认定退出失败或刷新会话未撤销的产品缺陷。现有 Admin/Client 均有 HTTP 401 后 refresh 再 logout 的流程;Admin 29 项、Client 17 项认证定向回归和 Admin typecheck 通过,本次未修改认证代码。该 Admin 自有会话随后经正式 refresh/logout HTTP 200 清理,证据 `admin-logout-confirmed.json`;客户页面保持打开完成 logout HTTP 200、58ms 并返回登录页,证据 `client-logout-complete.json`。这不替代 Admin 自然过期后的完整浏览器响应链复验。
历史 Lastleg 失败细分为 7 个断言失败、2 个错误,涉及换标自提分支、纯 SKU 完工托盘要求、H2 不支持 MySQL COLLATE、空库 SQL 含 ALTER、废弃照片表中文注释及自营 Schema 陈旧断言。20:26 本地补验:纯 SKU 无配送方式仍被要求新托盘的问题已修,31 项定向通过;空库基线将 21 处 ALTER 收敛入最终 CREATE,208 表、19 外键、87 CHECK 保持,13 个转运字段及中文注释同步模块基线,Schema 15 项通过。初始化种子解析补齐多行 VALUES,权限 433 条、授权 614 条及全部直接 Node 消费者 28 项通过;独立审查无阻塞。MySQL 方言断言改为显式 TEST 隔离库执行,14 项全部通过,14 个新建随机 schema 均精确清理、无残留或原业务库写入;H2 原 10 项通过,两个 MySQL 专属测试容器明确跳过。未修改生产 Mapper/COLLATE,证据为 `reports/return-sku-mysql-acceptance-summary-20261015.json`。上述修复已纳入后续 Lastleg #337。完整单 fork 回归曾触发 1GB Java 堆内存不足,并发现预约 guard 种子 SQL 的陈旧断言;断言修复后故障类单独 17 项通过。同一内存预算下分四次串行 Maven 执行全部 392 个源测试类,共 2723 项、0 失败、0 错误、9 跳过(2714 项执行通过);跳过含 7 个显式 opt-in 和 2 个另有真实 MySQL 14 项通过证据的容器。保留单 fork 失败,不声明该运行方式已通过。具名自提规则最后扩展另经 11 类 284 项通过,SQL/种子直接 Node 消费者 28 项通过,Admin 14 项及类型检查/构建通过。证据见 `reports/lastleg-convergence-batches-20261015.json`、`reports/all-pickup-direct-outbound-targeted-20261015.log`。
21:10 用户明确换标后所有自提直接创建出库,只有平台卡车进入预排车。当前实现中 PICKUP、AMAZON_PICKUP、CUSTOMER_PICKUP 与 EXPRESS 均直接出库,两个排车入口和两个候选 SQL 仅允许 TRUCK;普通库存实际托盘绑定、退货纯 SKU 数量守恒与已分配转运专用链保留。PDA 完工保存当前换标轮次,客户确认依据同轮持久转换记录核对转换后的 SKU;旧测试记录缺少该证据时明确拒绝,不猜历史或回填。Lastleg #337 精确发布 `607aaf74dcfc82e8e5a10d9cbd95394e20bacd40`、Admin #623 发布 `f6638ca6c642bdf2bd7dba50e60ca71eabf70f67`,均 SUCCESS、实际提交与镜像标签一致、healthy;Firstleg #499/Order #187/Client #417 保持健康。无新业务 SQL 或配置发布,也不重放空库基线到现有 TEST。
21:11 新版发布后、两个 Jenkins 节点无活动构建时,同样 36 次真实搜索请求全部 HTTP 200/业务 200且小于 1000ms,最高 928.9ms;FOLLOW_TODAY 928.9/616.3/628.3ms。完整返回语义、顺序和总数仍与原 #334 基线一致,证据为性能目录 `comparison-337-final.json`、`http-timings-337-final.json`、`runtime-337-final.json`。此轮在换标合成样本写入前执行,性能边界仍限定当前数据量及三路并发。
21:21 换标真实 HTTP 已完成:首轮 32 项通过,包含普通 PICKUP 的实际绑定、确认/同键重放唯一待拣出库、历史/列表唯一性、预排候选排除,以及手工未绑定确认拒绝且状态/出库不变。独立退货三箱签收成功后的数量断言因全局 Long 字符串输出被脚本误判而停止;原失败报告保留 `reports/relabel-minimal-TEST-RELABEL-20261015-2111/report.json`。恢复脚本先只读核实原单/唯一签收批/三箱 3+1+1 件/未盘点未换标/空盘点会话,保存实际数量类型证据后仅继续该批,未重复新建或签收;后半 49 项全部通过,见同名 `-resume-return/report.json`。纯 SKU 为 APPLIED→CONFIRMED、3 件及原箱/托盘不变、不建出库;AMAZON_PICKUP/CUSTOMER_PICKUP 各唯一 WAIT_PICK 一箱出库、保留原派送方式、重放不增单、不进预排。普通自提出库 `RELA-WH-20261015-938690`、亚马逊自提 `RELA-WH-20261015-518785`、客户自提 `RELA-WH-20261015-633537` 均未拣货、未发货。合成记录保留:复用专用 D1673 的两箱,新增一张退货单/一次三箱签收/五件货、五张换标申请、三张待拣出库;未绑定负向单 `RL-WH-20261015-256514` 保留待客户确认及冻结/异常证据。两次执行的六个自有登录均正常退出,盘点会话最终为空。原受保护 D1672 两箱 12 表哈希最终仍完全一致,原稳定批次/车次/送仓依赖只读复验通过。
本轮没有追加部署、数据库授权待办。完整发车/签收仍需要真实对方预约确认号、时间窗及确认凭证、真实 POD;原收货当地时间的时区来源证据仍缺,不能按当前仓时区倒推。合成接口验证不充当实际发货或签收凭证;上述外部材料缺失项继续保留。
## 自营库存周转 TEST 发布与验收(2026-10-15)
15:15 后台导出已按本轮授权发布并完成真实HTTP/文件验收:Lastleg、File提交dbb93a06c26c001d572272e153084b22038cfc60,Jenkins baiyue-firstleg-lastleg-service #326、baiyue-firstleg-file #152 SUCCESS;Admin提交9a10fb66572c761026b47c3e282ca31d7dab1897,admin-web-test #614 SUCCESS,Job已恢复release/test及原lightweight设置。实际镜像digest为Lastleg sha256:1fa6b1a07c9828cd31ee63adbfc26ceb0f18a32da7e3be4c9145007e61301e5c、File sha256:b41a24ee062519d909a670a0c8f9ced82382a5812c29f42c655a70f065fc5ed0;Admin imageId为sha256:dc85864b3832c7b1529d30fe1b826867e6863a90222ff42cad7961dedf5515a5。三个容器健康、精确版本及前端实际HTTP资源已核对。已执行selfop-turnover-export-permission.sql,仅新增独立导出权限并授予平台管理员;Nacos file-service.yml仅CAS新增SELFOP_INVENTORY_TURNOVER定义,回读SHA256为7a739a7763dfd0c543a392ba922eac0c4fab5b68c70838d3258b5db05d2f8207。无业务建表、销量/库存回写或采集配置修改。