diff --git a/scripts/check-game-distribution-lineage-e2e.mjs b/scripts/check-game-distribution-lineage-e2e.mjs index 58c090d72..04735e77a 100644 --- a/scripts/check-game-distribution-lineage-e2e.mjs +++ b/scripts/check-game-distribution-lineage-e2e.mjs @@ -95,6 +95,8 @@ const REMIX_COPIED_ID_LABEL = // 节点键集合由实现钉死(shared-contracts/src/game_distribution.rs:262-281),多一个键就失败。 const LINEAGE_NODE_KEYS = [ 'authorName', + // 本轮起服务端在族谱节点上下发封面对象键(客户端据此渲染缩略图)——它是有意对外暴露的公开字段。 + 'coverObjectKey', 'gameId', 'generation', 'parentGameId', @@ -102,9 +104,11 @@ const LINEAGE_NODE_KEYS = [ 'status', 'title', ]; -// 这 7 个键之外不该出现的东西:对象键 / 素材键 / 包摘要等私有字段。 +// 这 8 个键之外不该出现的东西:一般对象键 / 素材键 / 包摘要等私有字段。 +// 注意:`coverObjectKey` 本轮起是**有意下发**的公开字段(客户端渲染缩略图用), +// 因此用 (? nodes.map((node) => node.textContent)) .catch(() => []); + const observedStatusTexts = await page + .locator('#game-fork-remix-panel .game-fork-remix-status') + .evaluateAll((nodes) => nodes.map((node) => node.textContent)) + .catch(() => []); check( '浏览器视觉:点「复制作品 ID」后给出可读反馈(已复制按钮或复制失败提示)', copiedShown || failedShown, - `期望按钮名=${REMIX_COPIED_ID_LABEL} 或出现失败提示;实测按钮文案=${JSON.stringify(observedLabels)}(已授剪贴板权限;真实剪贴板内容仍属人工验收项)`, + `期望按钮名=${REMIX_COPIED_ID_LABEL} 或出现失败提示;实测按钮文案=${JSON.stringify(observedLabels)} 面板状态行=${JSON.stringify(observedStatusTexts)}(已授剪贴板权限;真实剪贴板内容仍属人工验收项)`, ); } }