Files
hesu-JT/docs/superpowers/plans/2026-08-17-sync-acceptance-log.md
T
2026-08-27 11:54:26 +08:00

65 lines
8.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.
# S5 验收日志 — 静态 v2 同步最终验收
- 日期:2026-08-19
- 验收人:Claude (S5 final acceptance)
- 环境:WP 7.0.4 测试站 `http://127.0.0.1:8090`(php -S + router.php);静态对照站 `http://127.0.0.1:8080`
- 代码基线:静态 v2 = a68ff43;主题 S1-S4 = e7a8963 / 71ae42d / beef315 / ea49be1
- 结果:**24/24 通过**(其中 1 项修复后通过);1 个小修复已 commit;无结构性阻塞
- 截图证据:`.playwright-mcp/s5-*.png`
## A. 逐页结构对照(curl WP 渲染 vs 静态 v2 HTML)
| # | 项 | 结果 | 证据 |
|---|---|---|---|
| 1 | `/` hero / bento / presence / network / partner / news | 通过 | hero-title 渐变(linear-gradient + background-clip:text,WP=静态计算样式一致);banner-kicker 0 处、bento 4 cell-media、banner-title 同静态(含 "Businessesk" 拼写保真);presence section-lead 新文案一致;ph-service1..4 各 1;partner 特性 4 li 无 strong;news 4 卡、news-meta 0 处 |
| 1f | `/` partner 轮播 slide | **修复后通过** | 静态 v2 slide 为空 div;WP 初测多出 3 个 `ph-label`(Warehouse/Logistics/Export Vehicles)。修复:seed/markup.php 3 个 partner-slide label 置空 + block.json label 默认 "",重播种后 `class="slide is-active ph ph-warehouse"` 等与静态一致(0 ph-label) |
| 2 | `/building-materials/` | 通过 | bp-caps(4 cap:25+ Years / 100+ Countries / 1,000+ Partners / 116 Lines,img 图标 4);5 张产品 img 卡(HDPE/PVC/…/Welding,静态即 5 卡);stat-num/stats-grid 0 处;无 scroll;bp-viewmore div 两端一致 |
| 3 | `/auto-export/` | 通过 | ae-tag/ae-marker/ae-legend 0 处;ae-models 双段 body(同一行两个 `<p class="ae-models__body">`,文案一致);bp-viewmore WP 为 div、静态为 section(仅标签名差异,类名/位置一致,记录不改) |
| 4 | `/after-sales/` | 通过 | 新 hero bg(uploads banner-8.jpg 与 image/After-sales/banner.jpg **md5 相同** 9913e4…);4 img 图标 cap(Reliable-Car-Inventory.png 等);6 个 as-svc 均 `<img Service1..6.png>`;3 个 as-loc(media+title) |
| 5 | `/global-logistics/` | 通过 | 新 hero bg(banner-9.jpg 与静态 banner.jpg md5 相同 47476a…);4 cap 双 label("1,250+ Completed Delivery" 等,文案与静态逐字一致);6 个 Service img |
| 6 | `/global-presence/` | 通过 | gp-hint 0 处(静态仅存注释行) |
| 7 | `/about-us/` | 通过 | au-zoom-mask 1 处;au-gps 4 img 卡(Global1-4.jpg)+ 宽图 about.jpg;4 data-card;feature-copy(Core Strengths + 4 条 Integration Strength / Operational Know-how / One-Stop Export / Digital Management,逐字一致) |
| 8 | `/development-history/` | 通过 | 无变化确认:dh-* 类计数两端全同(2 rail / 5 stage / 3 node / fold / route / plus) |
| 9 | `/contact/` | 通过 | hero bg = contact-us-bnner.jpg(新图,200);ct-hero__sub 两端均无;ct-map 三层(frame>box / veil / info>list):dl 列表 3 项(TEL/WhatsApp +8613526635577、Send Email、地址行),markup 逐行一致 |
| 10 | `/news/` | 通过 | 新 banner(news/news-banner.jpg,主题目录,200);sub/scroll/arrow 0 处;默认 4 行 nw-row;5 个 tab(All + 4 分类);注:静态 nw-pagination 为 JS 客户端分页(5/页)占位,WP 服务端渲染 4 行无需分页,设计性差异非缺陷 |
| 11 | `/news/<slug>/` | 通过 | nd-back/meta(仅 cat)/title/article/body/nav 全结构;article p+figure 交替(p,figure,p,figure,p);nd-meta__cat=Company News(date 注释删除一致);首篇仅 prev 单侧 = 静态 JS 行为 |
| 12 | Header mega(悬停实测) | 通过 | Business:opacity 0→1 可见,4 卡顺序 Auto Export / HESU PIPE / Global Logistics / After-sales,无 mega-desc;About:mega-left 空(0 子节点)+ 2 卡(Company Overview→about-us、Company History→development-history)。截图 s5-mega-business/about.png |
| 13 | Footer 4 img 社交 | 通过 | `<img>` × TikTok/Facebook/Instagram/WhatsApp(含 Instagram),均 200 |
## B. 交互实测(Playwright,1440×900 桌面 + 390×844 移动)
| # | 项 | 结果 | 证据 |
|---|---|---|---|
| 14 | 首页三交互 | 通过 | stats:重载后快速采样 0→3,448→6,320→8,672→10,344→11,860→15,000(数字滚动+千分位);network 拖拽:右拖 -1761.5→-1511.5→snap -1347.67、左拖反向(infinite marquee + snap);partner 自动轮播:is-active 按 exportcars→warehouse→logistics2 每 ~4s 轮换,dots 3 个 |
| 15 | GP fullpage + AU pinned | 通过 | GP:滚轮步进 scrollY 0→900→1800 精确整屏吸附;nav 高亮跟随(Middle East@900、Africa@1800),与静态**逐项一致**。AU zoom-mask(重点):沿 #au-3 所在 .au-pin(300vh)逐 150px 采样,opacity 0→0.133→0.267→0.4→0.533→0.667→**0.8**,zoom scale 1→2.2、reveal 0→1,与静态**数值级一致** |
| 16 | 时间线 | 通过(注) | v2 静态 DH 已改为折叠双行时间线(无横拖实现,js 仅 reveal);WP 与静态结构一致(2 rail/5 stage/3 node);data-reveal 4/4 滚动触发 .in。清单"横拖"系 v1 行为,v2 已移除 |
| 17 | 新闻 Tab + 空分类 | 通过 | All=4 行;Company News=4 行(静态 news.js 4 篇均为 Company News,一致);Delivery Cases / Exhibition Info / Global Network = 0 行 + `nw-empty`:"Coming soon — no X yet.";tab is-active 正确切换 |
| 18 | 详情页 prev/next | 通过 | 中间篇(Dubai Branch)prev=West Africa + next=Canton Fair 双侧;点击跳转 URL 正确、可往返;news 为独立 CPT,默认 Hello world! 文章不会串入导航 |
| 19 | CF7 提交态 | 通过 | 空提交:form.invalid + 6 必填项 .wpcf7-not-valid + aria-invalid=true(phone 非必填不含)+ 红框提示 "One or more fields have an error…";正常填写提交:无 invalid,进入 failed 态(测试环境无 SMTP,"There was an error trying to send your message…",红框样式正常显示——状态机/样式通路验证 OK,实机 SMTP 下为 sent 绿态) |
| 20 | 移动端抽屉 (<860px) | 通过 | 390px:toggle 可见,点击 nav.open + aria-expanded=true + body 滚动锁定;Business 父级点击 preventDefault 展开 collapsible mega(不跳转);backdrop 点击关闭(class 复位/aria=false/滚动解锁)。注:抽屉打开后 hamburger 被右侧抽屉覆盖(z49),关闭途径为 backdrop/链接点击——**与静态 v2 行为完全一致**(设计如此)。截图 s5-mobile-*.png |
## C. 代码项
| # | 项 | 结果 | 证据 |
|---|---|---|---|
| 21 | php -l 递归 | 通过 | 55 个 PHP 文件全部 "No syntax errors" |
| 22 | 10 路由 + 详情页控制台 | 通过 | 11 路由逐页 console error + script/css requestfailed 监听:全部 CLEAN(含滚动触发 reveal 后复检) |
| 23 | 图片抽查 | 通过 | 11 页面全部 img src 去重 102 个 URL 全部 200(8 个 301 为 http→https 归一化跳转,跟随均为 200);点名新图:After-sales/banner.jpg(banner-8 md5 同)、global-logistics/banner.jpg(banner-9 md5 同)、Service1-6.png、Global1-4.jpg、Product1-5.png、contact-us-bnner.jpg、news-banner.jpg、Instagram.png 等 |
| 24 | 编辑器抽查 | 通过 | 建材页(post 274):canvas 17 区块,hesu/page-shell→hero/business-intro/caps(4 cap)/large-image/product-cards(5)/view-more 全可见,caps 4 label + 4 img 图标;GL 页(277)cap 双 label RichText(每 cap 2 个可编辑 span:"1,250+"+"Completed Delivery"…);About 页(279)au-gps Inspector 新分组:4 Cards (images) / Wide Image / Data Cards (carousel, 4) / Feature (Core Strengths),面板可展开控件正常(Cards img alt、Placeholder class c1-c4)。截图 s5-editor-*.png |
## 修复清单
| # | 文件 | 内容 | commit |
|---|---|---|---|
| 1 | `hesu-theme/hesu/seed/markup.php` | partner 3 个 partner-slide `label` 置空(v2 slide 无 ph-label) | 本轮 |
| 2 | `hesu-theme/hesu/blocks/partner-slide/block.json` | `label` 默认 "Warehouse"→""(编辑器新插入 slide 亦不输出 ph-label) | 本轮 |
| 3 | 测试站 DB | `wp eval "hesu_seed_cleanup(); hesu_run_seed();"` 重播种,复核 ph-label=0、slide class 与静态一致 | — |
## 已知差异(记录在案,不修改)
1. auto-export `bp-viewmore`:静态 `<section>` vs WP `<div>`(view-more 块固定 div 输出;类名/位置/内容一致,无视觉差异)。
2. news 归档:静态 nw-pagination 为客户端 JS 分页(5/页);WP 服务端按分类渲染,4 篇无分页需求。
3. 移动端抽屉打开后 hamburger 被覆盖,靠 backdrop/链接关闭——静态 v2 同款行为。
4. 测试站残留默认文章 "Hello world!"(post_type=post,与 news CPT 隔离,不出现在任何导航/列表;如需洁净可删除,非同步缺陷)。
5. WP 登录后访问 `/wp-admin/`(目录 URL)被 router.php 落到 index.php 渲染首页——直访 `/wp-admin/index.php` 或具体 `post.php` 等文件路径正常;系 .test-env router 的已知边界,与主题无关。