功能:游戏广场展示真实评分摘要
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m23s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m24s
Project CI / Backend tests (pull_request) Failing after 19s
Project CI / Frontend tests (pull_request) Successful in 2m4s
Project CI / Repository checks (pull_request) Failing after 19s
Project CI / AI game creator shell web tests (pull_request) Successful in 1m45s
Project CI / Native shell tests (pull_request) Successful in 5m47s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 11m13s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 11m22s

公开游戏列表与详情在同一读取快照中返回有效评价均分和人数
同步共享契约、公开投影映射、生成绑定与 no-store 响应
广场与详情复用评分文本组件,区分无人评分与摘要不可用
扩展必要展示和响应契约测试,保留原有目录交互
更新规范、实施计划与本地定向测试及联调验证证据
This commit is contained in:
2026-10-01 08:40:58 +00:00
parent 5aaa030129
commit b5069fd3e3
18 changed files with 152 additions and 42 deletions
@@ -0,0 +1,17 @@
import type { GameDistributionRatingSummary } from '../contracts/gameDistribution';
export function GameRatingSummaryText({
summary,
}: {
summary?: GameDistributionRatingSummary;
}) {
return (
<span>
{!summary
? '评分暂不可用'
: summary.ratingCount === 0
? '暂无评分'
: `${summary.averageScore!.toFixed(1)}/10 · ${summary.ratingCount} 人评分`}
</span>
);
}
+1
View File
@@ -1,3 +1,4 @@
export { GameRatingSummaryText } from './GameRatingSummaryText';
export type {
PlatformActionButtonAlign,
PlatformActionButtonProps,
@@ -139,6 +139,8 @@ export type GameDistributionGame = {
* 创建、提交、审核、撤回)走服务端同一个 `game_payload`,不带这一项。
*/
currentVersion?: GameDistributionVersionSummary | null;
/** 公开列表和详情返回有效评价摘要;作者侧或旧响应可省略。 */
ratingSummary?: GameDistributionRatingSummary;
playCount: number;
createdAt: string;
};