From 11c8c2789a2fabe0a92c8994c23da9f404c256a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=BE=B7=E5=AE=87?= Date: Wed, 7 Oct 2026 14:09:16 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E5=90=AF=E6=A0=A1=E9=AA=8C=20E2E=20?= =?UTF-8?q?=E6=81=A2=E5=A4=8D=E5=B0=81=E9=9D=A2=E5=89=8D=E6=9F=A5=E5=9B=9E?= =?UTF-8?q?=E5=BD=93=E5=89=8D=20coverObjectKey?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 旧 STATE_FILE 只有 coverAssetId(素材对象 ID,不是对象存储 key),恢复续跑时先查游戏当前封面 key,不再拿它冒充 coverObjectKey --- ...heck-game-distribution-validation-restart-e2e.mjs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/scripts/check-game-distribution-validation-restart-e2e.mjs b/scripts/check-game-distribution-validation-restart-e2e.mjs index e2761b6fa..ced67bd3d 100644 --- a/scripts/check-game-distribution-validation-restart-e2e.mjs +++ b/scripts/check-game-distribution-validation-restart-e2e.mjs @@ -408,11 +408,17 @@ async function runResume() { Buffer.from('PK\x03\x04broken', 'binary'), randomBytes(1024), ]); - // 兼容旧版脚本写下的 STATE_FILE:当时只存 coverAssetId,直接读 coverObjectKey 会得到 - // undefined 并被 JSON.stringify 丢掉,v3 就会没有封面。 + // 兼容旧版脚本写下的 STATE_FILE:当时只存 coverAssetId(旧素材对象 ID,不是对象存储 key)。 + // 建版沿用封面要求等于游戏当前的 cover_object_key,所以恢复时先查回真实 key,绝不能拿 + // coverAssetId 冒充;v1 在写 STATE_FILE 前已审核通过,公开详情能返回当前封面。 + const current = state.coverObjectKey + ? null + : await api(`/api/game-distribution/games/${state.gameId}`, { + token: author, + }); const metadata = gameMetadata( state.title, - state.coverObjectKey ?? state.coverAssetId, + state.coverObjectKey ?? current?.data?.coverObjectKey, ); const v3 = await api( `/api/game-distribution/games/${state.gameId}/versions`,