chore: rebuild release package

This commit is contained in:
shiyue
2026-07-18 12:39:55 +08:00
parent a76de06c47
commit b90f5e1e44
14 changed files with 512 additions and 13 deletions

View File

@@ -0,0 +1,44 @@
# 调研记录
## 用户输入
- 目标主题:`wasteland`(暗金荒野)。
- 目标状态:窄屏。
- 目标方向:优先显示背景图右侧,而不是当前偏左裁切。
- 参考截图:`sessions/_attachments/ebfd9a2e-e73e-425a-87da-fe79b17964ec.png`、`sessions/_attachments/c8ab2b98-5543-4a99-8cf1-b4e14eafff45.png`。
## 资产角色
- 现有运行时背景:`public/assets/themes/wasteland/background.webp`,保持原文件不变。
- 两张会话附件仅作视觉对照,不进入 `public/`,本任务无派生资产。
## 代码与视觉基线
- 背景源为 1672×941 WebP,SHA-256:`ee52b136294a7a31181b67e209253fefe7ace8c2b76885e45621484fecb802cb`。
- 最终高保真组件层在 `public/style.css` 文件后部再次声明 `html[data-theme='wasteland'] body`,因此早期同名规则不是最终修改点。
- 当前只有 `max-width: 720px` 使用 `background-position: center, center, 70% 50%`;约 1022px 的用户截图未命中该断点,仍使用桌面 `center`,导致可见区域偏向源图中部。
- 第一张截图表现为右侧窄条只露出骑士局部;第二张截图是目标构图:可见区域覆盖源图右半部,骑士落在可见区域左侧,右侧圆环与留白同时保留。
- 初步判断应优先把既有 70% 右侧聚焦扩展到更宽的窄屏区间,而不是修改背景资产或消息层。
- 现有 `wasteland-theme` 回归在 `scripts/regression.js` 中明确断言 720px / 70%,新增断点或调整数值必须同步契约。
- 工作树已有上一轮侧栏功能的 `app.js` / `index.html` / `style.css` / `regression.js` 未提交改动;本任务只追加背景定位相关最小差异。
## 候选裁切对比(590×767)
- 50%:骑士大部分被裁到右侧边缘,左侧暗空区过多,不符合“显示右边”。
- 70%:骑士主体进入画面,但仍偏右,右侧圆环与法杖显示不足。
- 82%:骑士与圆环都进入画面,构图开始接近第二张参考图。
- 90%:源图右侧区域更完整,骑士向左移动、右侧圆环基本完整,方向符合需求。
- 下一步补测 100%(`right center`),在 90% 与 100% 中选择不会让骑士过度贴左的最终值。
- 子代理核对确认:最终桌面规则位于高保真层,721–1100px 当前无专属定位;现有回归可能匹配早期旧规则产生假阳性,必须收窄到高保真层最终规则。
- 100% / `right center` 最接近第二张参考图:骑士进入左半,法杖与右侧圆环完整保留,右侧区域表达最明确;选为最终值。
- 断点策略:新增 721–1100px 右侧聚焦以覆盖用户约 1022px 的截图,同时把现有 ≤720px 最终规则从 70% 收敛为 `right center`,保证窄屏连续。
- 用户实机反馈 `right center` 让主体“有点太靠左”;最终回调为 90% 50%,在原 70% 与 100% 之间保留右侧圆环,同时让骑士回到更自然的位置。
## 最终浏览器验收
- Firefox 152 + WebDriver BiDi 使用实际 CSS(无内联覆盖)验证:1101px 保持桌面 `50% 50%`;1100、1022、721、720、590、390px 均为第三层 `90% 50%`。
- 721→720 两侧 computed position 一致,没有断点跳位;所有视口横向溢出为 0。
- 1022×844:骑士位于中右区域,右侧圆环完整进入画面;590×767:骑士相较 100% 明显向右回移;390×844:主体靠左但未贴边,右侧法杖与圆环仍保留。
- 浏览器实际加载 `style.css?v=20260718-wasteland-bg-right-2` / `app.js?v=20260718-wasteland-bg-right-2`,CSS 与背景 WebP 请求均为 HTTP 200。
- 本任务未创建新主题、未改 DOM、未改资产;验收清单中的新主题注册、派生资产、动态组件状态均不适用,相关既有主题专项与全量回归用于确认未回归。
- 独立终审确认最终层叠、主题隔离、cache bust、回归契约和上一轮侧栏功能均无阻断问题。

View File

@@ -0,0 +1,13 @@
# 进度日志
- 2026-07-18:确认只调整暗金主题窄屏背景裁切,建立持久化计划。
- 2026-07-18:计划经独立审查批准;本地定位最终 720px / 70% 规则与回归断言,确认背景源尺寸/hash,开始浏览器候选对比。
- 2026-07-18:Firefox BiDi 在 590×767 对比 50/70/82/90%,90% 最符合右侧聚焦方向;继续补测 100% 后定稿。
- 2026-07-18:补测 100% 后确认 `right center` 最接近第二张参考图,进入主题隔离实现。
- 2026-07-18:在高保真主题层新增 721–1100px 右侧聚焦,并把 ≤720px 最终规则改为 `right center`;CSS/JS cache bust 更新为 `20260718-wasteland-bg-right-1`。
- 2026-07-18:回归收窄到最终高保真层,锁定两个窄屏区间的 `right center` 与新 cache bust;wasteland/sidebar/gilded 三个专项通过。
- 2026-07-18:首轮全量回归因 60 秒超时退出 124,无断言失败输出,进入环境诊断与替代入口重跑。
- 2026-07-18:直接 Node 入口全量回归在 60 秒内通过;语法、三个专项、全量回归与 diff check 均通过。
- 2026-07-18:根据用户实机反馈将 100% 回调到 90%,同步两个窄屏区间、回归断言与 cache bust `20260718-wasteland-bg-right-2`,重新进入验证。
- 2026-07-18:最终 Firefox 验收覆盖 1101/1100/1022/721/720/590/390px,90% 右侧聚焦连续且无溢出;最终全量回归再次通过,等待独立复审。
- 2026-07-18:独立复审通过;任务完成,准备清理临时 TODO CSV。

View File

@@ -0,0 +1,30 @@
# 暗金主题窄屏背景右侧聚焦
## 目标
仅调整 `wasteland` 暗金荒野主题在窄屏下的背景图横向裁切,让源图右侧区域优先进入视口,达到用户第二张参考图的构图倾向;不改消息、侧栏或其他主题。
## 阶段
1. **COMPLETE** — 建立脏工作树基线并定位窄屏背景规则
2. **COMPLETE** — 用真实浏览器对比候选背景定位值
3. **COMPLETE** — 实现暗金主题窄屏右侧聚焦并更新缓存版本
4. **COMPLETE** — 补充窄屏背景定位回归契约
5. **COMPLETE** — 执行主题专项、全量回归与静态检查
6. **COMPLETE** — 完成多窄屏真实浏览器视觉验收与独立复审
## 范围边界
- 只修改 `html[data-theme='wasteland'] body` 的窄屏 `background-position` 及对应 cache bust / 回归。
- 参考截图只用于构图对照,不作为运行时资产;不复制、不裁切、不修改现有背景源图。
- 保留当前工作树中上一轮侧栏功能的未提交改动,不覆盖或重排无关区块。
## 完成结论
- 用户反馈 100% 太靠左后,最终采用 90% 50%。
- 6 个阶段全部完成,独立终审通过;未新增或修改背景资产。
## 错误记录
- `codebase-memory-mcp` 本轮调用返回 `Transport closed`;按仓库降级规则使用本地 `rg` / `sed` 完成定位。
- 首轮 `npm run regression` 在 60 秒门禁处退出 124,专项均已通过且未输出断言失败;检查残留进程后改用直接 Node 入口重跑。