Files
Genarrative/docs/design/CHILD_MOTION_EDUTAINMENT_DISCOVER_ENTRY_2026-05-09.md
五香丸子 d41f260a2a
Some checks failed
CI / verify (push) Has been cancelled
feat: add baby object match edutainment flow
2026-05-12 16:08:59 +08:00

7.3 KiB
Raw Permalink Blame History

寓教于乐发现页临时入口设计

日期2026-05-09
适用范围:平台入口发现页、儿童动作识别娱乐教育内容线临时入口
文档性质:产品与前端落地边界

1. 目标

为儿童动作识别娱乐教育内容线提供一个临时入口。

入口放置在平台“发现”页面内,作为独立标签展示,标签名称为:

寓教于乐

后续生产的该内容线模板和游戏关卡,都放置在“寓教于乐”独立标签下。

该内容线当前只覆盖儿童动作识别 Demo 内容。后续创作环节需要继续对该板块内容做区分和独立管理,不把普通公开作品仅凭近似教育题材自动归入本板块。

2. 展示边界

寓教于乐内容不直接展示在以下位置:

  1. 推荐页;
  2. 发现页的推荐标签;
  3. 发现页的今日标签;
  4. 发现页的分类标签;
  5. 发现页的排行标签;
  6. 发现页搜索结果。

寓教于乐内容只在“发现 / 寓教于乐”标签下展示。

“寓教于乐”标签在发现页频道列表中放在最后,桌面端和移动端都显示。移动端访问该内容线的动作识别 Demo 时,需要提示横屏体验。

3. 开关规则

该入口需要支持灵活开关。

开关打开时:

  1. 发现页显示“寓教于乐”标签;
  2. “寓教于乐”标签下展示该内容线内容;
  3. 该内容线内容仍不进入推荐、今日、分类、排行和搜索结果。

开关关闭时:

  1. 发现页隐藏“寓教于乐”标签;
  2. 隐藏“寓教于乐”标签下内容;
  3. 该内容线内容不进入推荐、今日、分类、排行和搜索结果;
  4. 该内容线内容完全不可见,公开作品搜索、作品号搜索直达、公开详情深链、浏览历史入口、创作入口和创作页作品架等平台入口都不能打开或展示该内容。

4. 内容识别规则

临时阶段使用作品标签识别寓教于乐内容。

当公开作品标签中存在一个精确等于以下文本的标签:

寓教于乐

则该作品归入寓教于乐内容线。

识别规则为精确匹配,不做包含匹配,不兼容空格、大小写变体或同义标签,例如“教育”“儿童教育”“动作教育”都不视为寓教于乐内容。

关闭开关时,即使作品具备精确的“寓教于乐”标签,也不允许通过任何平台公开展示入口或搜索入口访问。

5. 技术落地边界

本次只做前端入口和前端展示过滤,不新增后端接口。

前端通过功能开关控制入口显隐。

开关环境变量:

VITE_ENABLE_EDUTAINMENT_ENTRY

默认开启。

当该变量显式配置为以下值时,入口关闭:

false
0
off
no

6. 验收点

  1. 开关打开时,发现页显示“寓教于乐”标签。
  2. 开关关闭时,发现页不显示“寓教于乐”标签。
  3. 带有“寓教于乐”标签的公开作品不进入推荐页。
  4. 带有“寓教于乐”标签的公开作品不进入发现页推荐、今日、分类、排行和搜索结果。
  5. 带有“寓教于乐”标签的公开作品只在“发现 / 寓教于乐”标签下展示。
  6. “寓教于乐”标签位于发现页频道列表最后,桌面端和移动端均可见。
  7. 开关关闭后,带有“寓教于乐”标签的公开作品不可通过作品号搜索、公开详情深链或浏览历史入口打开。
  8. 标签识别只接受精确等于“寓教于乐”的作品标签,近似标签不归入该内容线。

7. 待补充事项

“寓教于乐”标签下暂无内容时的空状态文案待定。落地时可先复用平台现有空状态组件,但不新增功能说明类长文案。

8. 第 1-2 项工程落地状态

第 1 项“发现页入口与过滤”和第 2 项“搜索 / 深链 / 历史入口拦截”已进入前端落地阶段,当前实现口径如下:

  1. 入口开关由 VITE_ENABLE_EDUTAINMENT_ENTRY 控制,默认开启,显式配置 false0offno 时关闭。
  2. 内容识别集中在 src/components/platform-entry/platformEdutainmentVisibility.ts,只读取公开作品原始 themeTags,且只接受精确等于“寓教于乐”的标签。
  3. src/components/rpg-entry/RpgEntryHomeView.tsx 已在发现页频道末尾追加“寓教于乐”频道,并将该类作品从推荐、今日、分类、排行、搜索、本地搜索兜底和桌面推荐模块中过滤。
  4. src/components/platform-entry/PlatformEntryFlowShellImpl.tsx 已复用同一过滤 helper避免推荐运行态自动启动寓教于乐作品并在公开详情、作品号直达和公开详情深链等公开入口保留不可见保护。
  5. 浏览历史入口会优先按当前公开作品集合匹配作品标签;匹配到“寓教于乐”作品且开关关闭时不再展示历史入口。
  6. /child-motion-demo 本地动作 Demo 直达路由也复用同一开关;开关关闭时不匹配独立 Demo 应用,回落到主站入口。
  7. 宝贝识物 创作入口和创作页作品架也复用同一开关;开关关闭时不展示模板入口,也不展示本地宝贝识物草稿或已发布卡片。
  8. 定向回归覆盖在 src/components/rpg-entry/RpgEntryHomeView.recharge.test.tsxsrc/components/rpg-entry/RpgEntryFlowShell.agent.interaction.test.tsxsrc/components/platform-entry/platformEdutainmentVisibility.test.tssrc/components/platform-entry/platformEntryCreationTypes.test.tssrc/routing/appRoutes.test.ts包含频道顺序、开关关闭、普通列表过滤、搜索过滤、作品号直达拦截、Demo 直达路由拦截、创作入口隐藏和精确标签识别。

9. 第 4 项作品架 / 广场接入边界

宝贝识物 首关的公开作品展示接入按以下口径收口:

  1. 平台公共作品模型新增 sourceType = edutainment,当前只承接 templateId = baby-object-matchtemplateName = 宝贝识物
  2. 宝贝识物 作品仍必须携带精确等于“寓教于乐”的公开标签,才会进入“发现 / 寓教于乐”频道。
  3. 宝贝识物 不因为模板名自动归入寓教于乐,也不因为近似标签归入寓教于乐。
  4. 第 4 项只负责公开作品卡片、发现页专属频道、公开详情、分享作品号和开关隐藏保护。
  5. 创作模板、image-2 资产生成、发布接口、运行时开始游戏和关卡状态由对应线程接入;当前公共作品卡直接透传后续数据源提供的 publicWorkCode,不在前端新增最终作品号前缀规则。
  6. 在创作和运行时链路真正接入前,公开详情内的启动、改造、编辑和点赞只做保护性占位,不新增玩法规则。

当前工程落点:

  1. src/components/rpg-entry/rpgEntryWorldPresentation.ts 定义 PlatformEdutainmentGalleryCardisEdutainmentGalleryEntry
  2. src/components/rpg-entry/RpgEntryHomeView.tsx宝贝识物 卡片识别为寓教于乐公开作品,并继续从推荐、今日、分类、排行和搜索结果中过滤。
  3. src/components/platform-entry/PlatformWorkDetailView.tsx 在公开详情中显示 宝贝识物 类型标签,并继续复用作品号复制和分享链路。
  4. src/components/platform-entry/PlatformEntryFlowShellImpl.tsx 已识别 edutainment 公共作品,避免落入 RPG 默认详情、推荐运行态或错误的改造链路。