Files
photo-live/docs/plans/progress/广告位轮播-验收记录.md
T

54 lines
3.9 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.
# 广告位轮播 验收记录(2026-09-29)
> 对应:设计方案 docs/plans/2026-09-28-广告位轮播-设计方案.md + 实施计划
> (Task 1-13 全部完成)。版本 `photo-live-server:bfba76b-20260929` +
> `photo-live-web:bfba76b-20260929-cn/-ov`(web 一次构建双标签——按 2026-09-24
> 定稿 cn/ov 两版构建参数已完全一致)。
## 1. 开发过程(子代理驱动 + 双阶段审查)
- 13 任务每任务独立实现者 + 规格审查 + 质量审查;整体终审(含 seam 级核查)。
- **审查战果**(真问题,全部修复并有测试钉住):
1. inbox 依赖暂存豁免缺 'ad'(不补=所有 ad 事件永久暂存永不投影)——计划评审阶段抓出;
2. reconciler SWEEP_ENTITY_TYPES 漏列 ad(对账无自愈通道)——实现者自审抓出;
3. 后台排序并列簇 ≥3 时 move 算法跳位(create 不传 sortOrder 全 0 为默认态)——质量审查抓出,create 追加 max+1 + 纯逻辑抽取修复;
4. verifyStaging 无 staging 前缀校验 + 无运行时 2MB 上限(管理员可把照片原图提升为公开广告)——终审抓出;
5. 失效绑定编辑死锁(相册软删后保存任何字段 400)——终审抓出,changed-only 提交修复;
6. heic 白名单桌面浏览器破图(广告无变体流水线)——终审抓出,广告域白名单收窄 jpeg/png。
- 有意偏差登记:终键版本化 `ads/{adId}/v{N}.{ext}`(copyIfAbsent 禁止覆盖,已回填设计文档);
乐观锁条件更新(防终键版本段漂移);测试用例 ④⑤ 顺序对调(墓碑后无法断言 v3 保持)。
## 2. 测试结果
contracts 33 · api 单测 59 · **ads e2e 17**(含真实 MinIO PUT/staging 冒充键 400/超限 400/heic 400/
同步贯通)· sync e2e 28(含 reconcile 生产环 ad 清扫)· admin 105(含排序并列簇/失效绑定/键集守护)·
viewer 258(含轮播组件 6 + 页面关闭记忆 2)· typecheck 13/13 包全绿。
**先在失败(非本功能,登记待修)**:batch-ops e2e ⑦(PHOTO_DUPLICATE 409——并行合入的上传查重
特性的 spec 未更新,base 上复现同败);apps/admin clipboard.spec.ts 两处 prettier lint。
## 3. 部署(2026-09-29,硬约束顺序执行)
| 步 | 结果 |
| --- | --- |
| ov 先行 | 镜像加载 → migrate-deploy ov(ads_ov 表)→ up -d → health ok;**新 ads 端点实测响应**(旧冒烟相册已清理返回 ALBUM_NOT_PUBLIC 同码 404——路由与语义正确) |
| cn 后行 | 镜像加载 → migrate-deploy cn(ads 表)→ up -d(6 容器 healthy)→ **web 一并 restart**(坑位①)→ health ok + 后台 200 + sync 启动 |
| 顺序合规 | ov 获 'ad' 消费能力先于 cn 可能产生 ad.* 事件(设计 §10 硬约束) |
## 4. 待用户操作 / 遗留
- **[用户] 视觉验收**:后台「系统管理 → 广告位」建广告(建议图 1200×360、≤2MB、jpeg/png)→
观众页(ov 域名)相册页头部下方查看轮播/徽标/✕ 关闭/点击跳转。
- **[用户·9-24 起仍未做] ov 安全组放行 TCP/13306 ← 101.37.116.184**:stat-return(60s 统计回传)
与 reconcile digest 阶段仍在幂等重试(内容推送走 443 不受影响)。
- 登记待修:batch-ops ⑦ spec、clipboard.spec lint、reconcile sweep 分页游标不前进(>500 行类型
清不空——ads 全表返回已绕开,既有 sibling 类型远期问题)、相册搜索 250 上限与 SlotBindDialog
同构代码抽取(M2/M4/M6 defer 项)。
- gitea 推送仍待令牌(bfba76b 等提交未推送,镜像已直传服务器)。
## 5. 运维备忘
- 广告域白名单与照片域已分离(AD_IMAGE_CONTENT_TYPES,jpeg/png,无 heic)。
- 后台排序:create 自动尾部追加(max+1);≥3 并列簇的 move 为文档化保险分支(正常不可达)。
- ov web 与 cn web 同一构建产物(双标签仅溯源);ROOT_REDIRECT 运行时区分。