docs: record final staging admin delivery

This commit is contained in:
Jesse
2026-07-28 11:32:16 +08:00
parent 5206fb2323
commit ac5aef5f89
2 changed files with 5 additions and 3 deletions
+1 -2
View File
@@ -2,5 +2,4 @@
- 真实收信端到端验收:执行环境没有可识别的 staging 测试邮箱/收件箱变量,仓库只记录发信配置而未提供受控测试邮箱。按任务硬规则不使用他人邮箱;代码、测试和部署继续,部署后的注册、验证码登录与忘记密码真实收信步骤待具备受控邮箱后补验。 - 真实收信端到端验收:执行环境没有可识别的 staging 测试邮箱/收件箱变量,仓库只记录发信配置而未提供受控测试邮箱。按任务硬规则不使用他人邮箱;代码、测试和部署继续,部署后的注册、验证码登录与忘记密码真实收信步骤待具备受控邮箱后补验。
- PostgreSQL 事务反向测试:当前执行环境没有 `docker``postgres``initdb``psql`、Podman/Colima/Lima。`frontend/tests/admin-database.test.ts` 已实现审计触发器故意失败并断言兑换码行数仍为 0 的红灯证据,但本地执行在启动 fixture 前以 `spawnSync docker ENOENT` 阻塞;交由 exact-SHA staging quality gate 的 Docker 环境运行。全量 `npm test` 因同一缺失 Docker 共阻塞 11 项数据库/部署测试,另有 1 项既有真实 DOM 测试因缺 Playwright headless Chromium 阻塞;其余 1031 项通过,skipped/todo=0。 - PostgreSQL 事务反向测试:当前执行环境没有 `docker``postgres``initdb``psql`、Podman/Colima/Lima。`frontend/tests/admin-database.test.ts` 已实现审计触发器故意失败并断言兑换码行数仍为 0 的红灯证据,但本地执行在启动 fixture 前以 `spawnSync docker ENOENT` 阻塞;交由 exact-SHA staging quality gate 的 Docker 环境运行。全量 `npm test` 因同一缺失 Docker 共阻塞 11 项数据库/部署测试,另有 1 项既有真实 DOM 测试因缺 Playwright headless Chromium 阻塞;其余 1031 项通过,skipped/todo=0。
- staging 两角色冒烟:已确认受控 admin 账号 `luna@copse.life` 存在且是 `user,admin`,但仓库/环境未提供受控 viewer 账号不得使用他人账号。viewer 浏览器冒烟需先由授权人员创建/指定受控 viewer - staging 两角色浏览器冒烟:已确认受控 admin 测试账号存在且是 `user,admin`,但当前执行环境没有其密码或已登录会话;也未提供受控 viewer 账号不得读取/猜测凭据或使用他人账号。已完成匿名 shell、5 个资源 401、写请求 401 的服务端冒烟;admin/viewer 登录后浏览器冒烟授权人员提供受控会话后补验
- staging 发布控制器冲突:exact staging SHA `218cee579e92fcf9bfe435a349250cfe23304547``Staging Backend Quality Gate` run 30322107657 已成功,但既有 `Deploy staging` run 30322719839 与 `Migrate Staging Database` run 30322756154 都在 “Verify reviewed revision and staging target” 拒绝,原因为 `staging revision is not in the reviewed main history`。控制器要求部署 SHA 属于 main 历史,而本任务硬规则明确“不碰 main、最终只合入 staging”;禁止绕过控制器或将功能合入 main,故 migration/deploy/health exact SHA 被此互斥规则阻塞。
+4 -1
View File
@@ -1019,4 +1019,7 @@
- GitHub CLI 认证已恢复可用;此前认证阻塞已从 BLOCKED 移除。未触发 production。 - GitHub CLI 认证已恢复可用;此前认证阻塞已从 BLOCKED 移除。未触发 production。
- rebase 到 `origin/staging=43581ac` 后新 SHA `635c919` 首次 gate 红灯:能力审计按 `page.tsx` 枚举路由,实际新增后台页面与既有固定合同冲突;未改断言/Python,改为唯一 `/admin/codes` 页面用 query 切换 5 资源,`/admin` route handler 重定向。 - rebase 到 `origin/staging=43581ac` 后新 SHA `635c919` 首次 gate 红灯:能力审计按 `page.tsx` 枚举路由,实际新增后台页面与既有固定合同冲突;未改断言/Python,改为唯一 `/admin/codes` 页面用 query 切换 5 资源,`/admin` route handler 重定向。
- 修复 SHA `218cee579e92fcf9bfe435a349250cfe23304547` 已 fast-forward push 到 origin/stagingexact gate run 30322107657 全部成功,含 Python quick gate、frontend/database contracts、API/web image 与 immutable manifest。 - 修复 SHA `218cee579e92fcf9bfe435a349250cfe23304547` 已 fast-forward push 到 origin/stagingexact gate run 30322107657 全部成功,含 Python quick gate、frontend/database contracts、API/web image 与 immutable manifest。
- 自动 deploy run 30322719839 及手动 migration run 30322756154 均被既有 main-ancestry 控制器拒绝`staging revision is not in the reviewed main history`。这与“不碰 main、只合入 staging”硬规则互斥,未绕过,详见 BLOCKED - 自动 deploy run 30322719839 及手动 migration run 30322756154 均被既有 main-ancestry 控制器拒绝;随后用户明确授权将同一 SHA fast-forward 到 main,再部署 staging。
- main/staging 同步后,migration run 30324787560 成功:应用 `20260727000000_admin_viewer_identity.sql``20260727010000_refine_admin_redemption_audit.sql`,并自动 dispatch deploy run 30324940917;该 deploy 成功,health exact SHA 为 `f950bfd...`
- 线上 `/admin` 冒烟发现反向代理 Location 错用容器 URL `https://0.0.0.0:3000/admin/codes`;改为相对 `/admin/codes`,形成最终 SHA `5206fb2323c87c877e5d361dc64c77d0497e14dd`,同步 fast-forward 到 main/staging。
- 最终 SHA gate run 30325219367 success,自动 deploy run 30325788303 successhealth 返回同一 SHA`/admin` 307 到相对 `/admin/codes`Refine shell 2005 个匿名资源与匿名写请求均 401。未触发 production deploy。