Skip to content

docs(readme): 按新界面重拍截图,截图 workflow 转正 - #35

Merged
Emryswu merged 6 commits into
mainfrom
chore/readme-screenshots
Oct 19, 2026
Merged

Emryswu merged 6 commits into
mainfrom
chore/readme-screenshots

Conversation

@Emryswu

@Emryswu Emryswu commented Oct 19, 2026

Copy link
Copy Markdown
Owner

#31、#33、#34 改完之后,README 的 8 张截图有 6 张还是旧界面。这个 PR 重拍全部截图,并把截图工具从临时分支转成正式 workflow,以后改界面能直接重拍。

截图

8 张全部在 GitHub Actions 里实拍,文件名不变:

  • 来源:真实运行的服务——打包后端、默认 H2 profile 启动(与 start-fullstack.ps1 相同配置)、写入演示种子,再用生产构建起前端,按角色登录截取
  • 规格:1440 宽、2x 分辨率,时区 Asia/Shanghai;登录页截首屏,其余整页
  • 逐张看过:设备表、工单表、预约记录、审计页都是新样式;维修员视图里自己的工单显示「陈工」

截图 workflow 转正

上次(#30)用的是 tmp/readme-screenshots 分支上的一次性 workflow。它的选择器还是改版前的(button.primary.wide、.equipment-card、.timeline article),现在直接跑会全部超时。这次改成:

  • .github/workflows/readme-screenshots.yml:只手动触发(Actions → README 截图 → Run workflow,或 gh workflow run readme-screenshots.yml --ref <分支>),截图提交回运行的那个分支;在 main 上运行会直接报错退出
  • .github/screenshots/shots.mjs 记录要拍哪些页面、每页等哪个选择器;take.mjs 负责登录和截图。选择器改用 data-* 属性和新界面的类名
  • 前端改用生产构建 + vinext start(原来是 dev 模式)

为什么只手动触发:页面上有「今天」这类日期,每次运行截出来都不一样,推送即触发的话每推一次就会多一个截图提交(这个分支上就实际发生了一次,所以有两个截图提交)。

注意:workflow_dispatch 要等 workflow 文件进了 main 才能在界面上手动运行,所以这次是先用推送触发拍的,合并后就只能手动了。

防止跑偏的约束

frontend/tests/readme-screenshots.test.mjs,跟着 CI 的前端测试一起跑:

  • shots.mjs 里每个选择器依赖的类名或 data-* 属性必须还在前端组件里——改界面时如果把它们删了,普通测试就会红,不用等下次重拍才发现(把设备页的等待选择器改回旧的 .equipment-card,测试失败,已验证)
  • 截图清单必须和 README 引用的图、docs/screenshots 里的文件一一对应

AGENTS.md 新增「README 截图」一节:只用真实服务截图、怎么触发重拍、shots.mjs 和测试的关系。README 注明截图由这个 workflow 生成,审计页说明补上筛选。

验证

  • 前端 npm run lint、TZ=UTC npm test(84 项)全部通过
  • 截图 workflow 在本分支跑过两次,8 张全部保存成功

合并后

tmp/readme-screenshots 临时分支可以删掉了。

- .github/workflows/readme-screenshots.yml:手动触发,或推送 chore/readme-screenshots*
  分支时触发;打包后端(默认 H2 profile + 演示种子)、生产构建前端,按角色登录截图并
  提交回该分支;不允许在 main 上直接运行
- .github/screenshots/shots.mjs 记录要拍的页面和等待的选择器,take.mjs 负责截图;
  选择器改用 data-* 属性和新界面的类名
- 测试:shots.mjs 里的选择器必须在前端组件里存在,截图清单必须与 README 引用的图一致,
  防止界面改版后截图工具悄悄过时
- README 注明截图由 readme-screenshots workflow 生成,审计页说明补上筛选
- AGENTS.md 增加「README 截图」一节:只用真实服务截图、如何触发重拍、
  shots.mjs 与防过时测试的关系
页面上的日期每天都变,每次运行都会产生新的截图提交;推送即触发会在每次推送后
追加一个截图提交。改为手动运行,README 与 AGENTS.md 同步说明用法。
@Emryswu
Emryswu merged commit b6c6647 into main Oct 19, 2026
9 checks passed
@Emryswu
Emryswu deleted the chore/readme-screenshots branch October 19, 2026 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant