Files
lislgosms/docs/release-20260914-test-http-api.md
T
2026-09-14 13:02:16 +08:00

50 lines
4.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# HTTP 接口整改测试发布记录
截至 2026-09-14 12:58(北京时间):代码已提交、推送,精确候选验证通过;测试发布阻塞于 sudo 安全输入,尚未 prepare/deploy。未部署预生产。
## 版本与范围
- 应用提交:`f0e843436c715010d3eaec72a5e0c81816a6e5bd`;实际远端回读一致,fetch 后分叉 `0/0`
- 测试当前基线:`8e4bc5a20e4d98e96fc8572fabbac149ba12c8e6`,本轮 SSH 回读确认。差异中的前置提交仅文档,不引入其他未发布业务代码。
- 方案:[HTTP 整改方案](http-api-assessment-20260910.md);公共正文:[接入手册](client-http-api-guide.md);用例:`TC-HTTP-REMED-IMPL-20260914`
- 上行列表/详情移除通道、供应商及内部匹配字段,详情允许客户自己的企业/应用 ID。保持四接口及 GET 空体兼容签名,补公共契约、校验、错误关联 ID、耐久受理快照与新回调恢复。
- 已有 metrics、发布工具、package.json 和其他草稿均未纳入提交;三个既有脏台账仅提交本轮追加段落。
## 精确候选证据
标准命令 `npm run release -- validate --plan .local-data/releases/20260914T044843-f0e843436c71-6b083d74/plan.json` 于 12:57:32 完成。
- API72 套、780 项全部通过,164.877 秒。
- 前端:29 套、141 项全部通过,92.35 秒。
- Prisma generate、API/前端类型、格式、lint、stylelint、CSS 治理通过。
- 同一独立候选 production 构建通过;入口 gzip 107.17 KiB / 250 KiB。既有图表大 chunk 提示保留,未改变预算。
- 工作区先前全量数字含旧 metrics 改动,与本候选数字不同;以上候选结果才绑定发布应用提交。
- 验证证据:上述发布目录的 `validation.json` 及对应日志;验证时间和日志 SHA256 由标准工具写入,未手工构造通过结果。
计划摘要:`2de0ecf901f4b4c1c945530e5deded76da87b41085d6c488245d01b51c7c2b79`
归档摘要:`a8248afd97cd63af0f382cd1a53902ca8c5429e94120f1df640689d26f9339a3`
工具摘要:`cc01ce7d24ef4cc0a6a84a5f05d9219ff8f97b47cb8596869ea79c0dbf26d8db`;工具为本机已有未提交 `tools/release/`,不是应用提交的组成部分。
## 真实隔离验收与恢复边界
在测试机独立 `/tmp/cmpp-http-remediation-inqN9k` 的 PostgreSQL 15439、Redis 16389 和受控 HTTP 接收端执行;没有连接现存业务队列或启动 Gateway。
- 实际 Nest 鉴权、PG 查询、分页、跨租户拒绝、nonce 重放、参数拒绝、公共上行投影及文档下载通过。
- 回调在 Redis 发布故障后保留 PG 待办并恢复,实际 HTTP 500 后约 60 秒重试 200PG 尝试一致;旧 version 0 不重投。
- 真实 PG 消息/响应/待办原子提交与故障回滚通过;前置分类和计费为隔离替代依赖,因此不是发送或计费业务验收。仅隔离库保留 1 条合成消息,未入队短信、未产生供应商 Submit。
- HEAD 基线 schema 及追加迁移通过;带旧记录迁移确认记录保留、recoveryVersion=0、租约为空。
- PG、Redis、隔离 API 和本地文档进程已按本轮精确路径/PID停止,数据及证据目录保留。
- 追加迁移不回填历史;旧应用不消费新 outbox,应用回退前需检查待办和恢复安排,不能把保留表等同自动恢复。
本地证据位于 `%TEMP%/cmpp-http-remediation-20260914/`,包含集成、事务、迁移、浏览器结果和原失败日志,不提交凭据及业务快照。
## 预检阻塞与待验收
标准 `preflight` 于 12:57 实际返回 `sudo: 需要密码`。已打开本机终端并提供标准 `--prompt-sudo` 掩码输入步骤;不从聊天索取密码、不改 sudoers、不绕过门禁。SSH 曾间歇性超时,随后回读成功;此问题与 Git/GCM 认证分开记录。
尚未生成通过的现场 preflight、独立恢复备份或执行服务切换。后续必须按同计划重新 preflight,再 prepare → deploy → verify/status/report;现场漂移或计划变化须重新检查。
本轮初查测试系统盘可用 24,643,088,384 字节、占用 76%,没有 `/data`;完整受保护发布资产盘点需 sudo,未完成。当前与上一有效版本的容量治理、发布前后新增量、恢复资产校验均待正式发布阶段,不清理历史资产。
本地实际文档阅读器三尺寸、复制及失败降级、检索、示例切换、MD 同字节下载和刷新通过。浏览器连接器返回 `nodeRepl.fetch request failed`;现存已登录客户端和其他四个 Tab 的测试环境验收未完成,不推断用户未登录。真实短信正向、计费、Gateway 和供应商链路因无专项发送授权未执行。