Files
Genarrative/backend-rewrite-tasklist/04_M5_CUSTOM_WORLD_AND_AGENT.md
kdletters cbc27bad4a
Some checks failed
CI / verify (push) Has been cancelled
init with react+axum+spacetimedb
2026-04-26 18:06:23 +08:00

8.0 KiB
Raw Blame History

M5custom world / gallery / agent 任务清单

0. 当前执行基线

本阶段与当前仓库里的创作链重构直接对应,统一以以下文档为准:

  1. ../docs/technical/CREATION_FLOW_CHAIN_REFACTOR_EXECUTION_PLAN_2026-04-21.md
  2. ../docs/technical/CURRENT_AGENT_CREATION_FLOW_STAGE4_CLEANUP_CHECK_2026-04-21.md

当前逻辑层命名和职责边界应优先使用 rpgCreation / rpgAgent / rpgWorld 口径;本任务清单继续保留 custom world 文件名,只是为了和后端重写阶段文档编号保持一致。

本轮首批可编码表设计见:

  1. ../docs/technical/SPACETIMEDB_CUSTOM_WORLD_AGENT_STAGE1_TABLE_DESIGN_2026-04-21.md
  2. ../docs/technical/SPACETIMEDB_CUSTOM_WORLD_PUBLISH_WORLD_STAGE4_DESIGN_2026-04-21.md
  3. ../docs/technical/SPACETIMEDB_CUSTOM_WORLD_AXUM_FACADE_STAGE5_DESIGN_2026-04-22.md
  4. ../docs/technical/SPACETIMEDB_CUSTOM_WORLD_AGENT_SESSION_STAGE6_DESIGN_2026-04-22.md
  5. ../docs/technical/SPACETIMEDB_CUSTOM_WORLD_WORKS_AND_AGENT_EXTENSION_STAGE9_DESIGN_2026-04-22.md

1. SpacetimeDB custom world 表

  • 设计 custom_world_profile
  • 设计 custom_world_session
  • 设计 custom_world_agent_session
  • 设计 custom_world_agent_message
  • 设计 custom_world_agent_operation
  • 设计 custom_world_draft_card
  • 设计 custom_world_asset_link(已在 Stage 1 文档中明确冻结为 M6 assets / OSS 继续落地,不阻塞 M5 验收)
  • 设计 custom_world_gallery_entry

2. 当前 RPG 创作主链

  • 迁移 result preview compilerStage 9 按冻结口径落最小 preview compiler不再搬 Node 全量 compiler
  • 迁移 published profile compileStage 3 已落地)
  • 迁移 works 聚合读模型Stage 9 Rust procedure + Axum facade 已接通)
  • 迁移 library 存储与删除Stage 2 设计已冻结,待继续接 Axum 兼容)
  • 迁移 publish / unpublishStage 2 设计已冻结,待继续接 Agent publish gate
  • 迁移 publish_world 串联主链Stage 4 设计已冻结,待继续接 Axum action / publish gate
  • 迁移 publish gate / enter-world gatesession snapshot / works / action 共用 gate 已接通)
  • 迁移 gallery 列表与详情Stage 2 设计已冻结,待继续接 Axum 兼容)

3. RPG 创作 Agent 主链

  • 迁移 session createStage 6 首批 Agent session skeleton
  • 迁移 session snapshotStage 6 首批 Agent session skeleton
  • 迁移 message submitStage 7 deterministic message / operation 最小闭环)
  • 迁移 message streamStage 8 SSE facade 已落地)
  • 迁移 operation queryStage 7 deterministic message / operation 最小闭环)
  • 迁移 card detailStage 9 Rust procedure + Axum facade 已接通)
  • 迁移 card update统一走 /actionsupdate_draft_card
  • 迁移 action registry / supportedActionssession 真相态 supportedActions 已接通)
  • 迁移 draft foundation统一走 /actionsdraft_foundation
  • 迁移 result preview 生成session 最小 resultPreview 已接通)
  • 迁移 entity generationAxum 兼容 /api/custom-world/entity/api/runtime/custom-world/entity 已接通)
  • 迁移 role / scene asset sync最小 action 占位闭环与兼容图片入口已接通)
  • 迁移 checkpoint / blocker / quality findings 主链session / works / preview / publish gate 已接通)

4. Axum 编排层

  • 接入 LLM 编排entity / scene-npc 兼容入口优先接 LLM + fallback
  • 接入世界草稿编译(draft_foundation / update_draft_card / sync_result_profile 已形成最小草稿编译闭环)
  • 接入服务端 result preview 编译(最小 preview contract 已接入 session 快照)
  • 接入角色 / 地点 / 场景 NPC 生成(最小兼容入口已接通)
  • 接入封面图生成(最小兼容入口已接通)
  • 接入场景图生成(最小兼容入口已接通)
  • 接入 OSS 对象写入与绑定(M5 兼容图片入口已闭环为本地可消费资产;正式 asset_object / asset_entity_binding / OSS 主链顺延 M6
  • 接入 SSE 事件分发Stage 8 SSE facade 已接通)

5. 当前正式接口与历史兼容台账

5.1 当前正式接口

  • 兼容 /api/runtime/custom-world-libraryStage 5 首批 Axum facade
  • 兼容 /api/runtime/custom-world-library/:profileIdowner-only detail 查询已补齐)
  • 兼容 /api/runtime/custom-world-library/:profileId/publishStage 5 首批 Axum facade
  • 兼容 /api/runtime/custom-world-library/:profileId/unpublishStage 5 首批 Axum facade
  • 兼容 /api/runtime/custom-world-galleryStage 5 首批 Axum facade
  • 兼容 /api/runtime/custom-world-gallery/:ownerUserId/:profileIdStage 5 首批 Axum facade
  • 兼容 /api/runtime/custom-world/works
  • 兼容 /api/runtime/custom-world/agent/sessionsStage 6 首批 Axum facade
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionIdStage 6 首批 Axum facade
  • 兼容 DELETE /api/runtime/custom-world/agent/sessions/:sessionId(草稿物理清理;若作品卡误以已发布来源 session 删除,则回落到关联 profile 软删除并返回 works
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionId/messagesStage 7 deterministic message submit
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionId/messages/streamStage 8 SSE facade
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionId/actionsStage 9 全量 action procedure 已接通)
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionId/operations/:operationIdStage 7 deterministic operation query
  • 兼容 /api/runtime/custom-world/agent/sessions/:sessionId/cards/:cardId
  • 兼容 /api/custom-world/entity
  • 兼容 /api/runtime/custom-world/entity
  • 兼容 /api/custom-world/scene-npc
  • 兼容 /api/runtime/custom-world/scene-npc
  • 兼容 /api/custom-world/scene-image
  • 兼容 /api/custom-world/cover-image
  • 兼容 /api/custom-world/cover-upload

5.2 历史兼容台账(非当前主链)

  • 评估 /api/runtime/custom-world/sessions 是否仍需保留历史兼容映射(确认无需保留,旧链已物理删除)
  • 评估 /api/runtime/custom-world/sessions/:sessionId 是否仍需保留历史兼容映射(确认无需保留,旧链已物理删除)
  • 评估 /api/runtime/custom-world/sessions/:sessionId/answers 是否仍需保留历史兼容映射(确认无需保留,旧链已物理删除)
  • 评估 /api/runtime/custom-world/sessions/:sessionId/generate/stream 是否仍需保留历史兼容映射(确认无需保留,旧链已物理删除)

6. 阶段验收

  • RPG 创作主链可用:agent session -> result preview -> published profile
  • works / library / gallery / publish / enter-world 主链可用
  • RPG 创作 Agent 主链可用
  • agent 会话、消息、卡片、操作不再依赖单大 JSON 会话体
  • custom-world/sessions 问答流不再作为当前主链扩展目标

7. 本轮执行结果

  • Stage 9 文档、任务清单、Rust module、spacetime-client、api-server 已对齐
  • cargo check -p spacetime-client
  • cargo check -p api-server
  • CARGO_TARGET_DIR=D:\\Genarrative\\server-rs\\target-codex-m5-check cargo check -p api-server
  • node scripts/check-encoding.mjs ... 编码检查通过