64 lines
3.9 KiB
Markdown
64 lines
3.9 KiB
Markdown
# 创作中心作品卡操作入口落地说明
|
||
|
||
日期:`2026-04-22`
|
||
|
||
## 1. 本次目标
|
||
|
||
创作中心作品卡需要补齐两个直接操作入口:
|
||
|
||
1. **体验**:对已经满足运行条件的作品,直接从卡片启动对应玩法,不再必须先进详情页。
|
||
2. **删除**:对已有正式删除契约的 RPG 已发布作品,直接从卡片删除并刷新创作中心。
|
||
|
||
## 2. 操作语义
|
||
|
||
| 作品类型 | 状态 | 主按钮 | 体验入口 | 删除入口 |
|
||
| --- | --- | --- | --- | --- |
|
||
| RPG Agent 草稿 | `draft` | `继续创作` / `继续完善` | 不展示,草稿需要先走发布链 | 不展示,本轮不新增 Agent session 物理删除 |
|
||
| RPG 已发布作品 | `published` 且 `canEnterWorld=true` | `查看详情` | 展示 `体验`,直接调用现有进入世界链 | 展示 `删除`,走 owner-only 软删除 |
|
||
| Big Fish 草稿 | `draft` | `继续创作` | 不展示,草稿需要先回到聊天或结果页继续完善 | 不展示,本轮不新增 Big Fish 草稿删除 |
|
||
| Big Fish 已发布作品 | `published` | `查看详情` | 展示 `体验`,直接调用现有 Big Fish 运行态 | 不展示,本轮不新增 Big Fish 删除契约 |
|
||
| 拼图草稿 | `draft` | `继续创作` | 不展示 | 不展示,本轮不新增拼图删除契约 |
|
||
| 拼图已发布作品 | `published` | `查看详情` | 展示 `体验`,直接调用 `startPuzzleRun` | 不展示,本轮不新增拼图删除契约 |
|
||
|
||
## 3. 后端边界
|
||
|
||
RPG 删除必须继续遵守后端治理里的软删除规则:
|
||
|
||
1. `custom_world_profile` 增加 `deleted_at` 语义字段。
|
||
2. 删除时不物理删除 profile,只设置 `deleted_at`、把发布态回退为 `draft`、清空 `published_at`,并删除公开 gallery projection。
|
||
3. `library / gallery detail / works` 读取默认过滤 `deleted_at != null` 的作品。
|
||
4. 重复删除同一 profile 保持幂等,返回当前可见作品列表。
|
||
|
||
## 4. 前端边界
|
||
|
||
1. 卡片只做表现和动作分发,不在前端拼删除逻辑。
|
||
2. 删除前使用浏览器确认,避免移动端误触。
|
||
3. 卡片按钮移动端优先换行铺开,避免小屏幕上三个按钮拥挤。
|
||
4. 不在 UI 中默认展示大段规则说明,失败信息沿用创作中心现有错误 banner。
|
||
|
||
## 5. 本轮不做
|
||
|
||
1. 不新增 Agent session 草稿删除。
|
||
2. 不新增拼图作品删除。
|
||
3. 不新增独立删除面板。
|
||
4. 不新建创作页或运行时页面,只复用现有 `CustomWorldCreationHub`、RPG 进入世界链和拼图运行时链。
|
||
5. Big Fish 草稿恢复链补齐时,只补创作中心 works 投影和恢复入口,不新建独立 Big Fish 作品系统。
|
||
|
||
## 6. 已落地结果
|
||
|
||
1. 创作中心 RPG 已发布作品卡主按钮统一调整为 `查看详情`,避免和直接进入玩法的动作混淆。
|
||
2. RPG 与拼图已发布作品卡新增独立 `体验` 入口,直接复用各自现有运行时进入链路。
|
||
3. RPG 已发布作品卡新增 `删除` 入口,调用 `/api/runtime/custom-world-library/{profile_id}` 的 `DELETE` 路由,按 owner-only 软删除规则刷新作品列表与公开广场。
|
||
4. 创作中心详情页原有删除链路继续保留,和卡片删除共用同一后端删除契约。
|
||
5. 后续拼图草稿恢复链补齐后,拼图 `draft` 卡主按钮语义收口为 `继续创作`,通过 `sourceSessionId` 恢复 Agent session,而不是进入详情页。
|
||
6. 后续 Big Fish 草稿恢复链补齐后,Big Fish `draft` 卡主按钮同样收口为 `继续创作`,通过 `sourceSessionId` 恢复 Agent session,而不是重新创建会话。
|
||
|
||
## 7. 已验证
|
||
|
||
1. `corepack pnpm vitest run src/components/rpg-entry/RpgEntryFlowShell.agent.interaction.test.tsx`
|
||
2. 交互测试已覆盖:
|
||
- 创作卡点击 `查看详情` 进入详情页。
|
||
- 创作卡点击 `体验` 直接进入世界选择链路。
|
||
- 创作卡点击 `删除` 直接从作品列表移除。
|
||
- 详情页删除入口在新卡片动作语义下仍然可用。
|