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`,