Files
Genarrative/docs/technical/CUSTOM_WORLD_SCENE_DANGER_LEVEL_REMOVAL_2026-04-25.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

2.2 KiB
Raw Blame History

自定义世界场景 dangerLevel 字段移除落地说明2026-04-25

背景

自定义世界场景对象过去在开局归处、地标、草稿实体和生图上下文中携带 dangerLevel。该字段会让场景结构额外承载“危险等级”枚举,并在提示词中要求模型生成固定的 low|medium|high|extreme 值。当前场景设计更依赖 descriptionvisualDescription、幕级事件和任务描述表达氛围,不再需要独立危险等级字段。

落地范围

  • 场景数据结构删除 dangerLevel,包括开局归处、地标、共享草稿协议与前端表单映射。
  • 自定义世界生成、修复和补全提示词不再要求模型输出 dangerLevel
  • 场景生图上下文只使用世界名、世界摘要、整体基调、玩家目标、场景名、场景描述和用户画面描述,不再拼接危险等级氛围。
  • Rust API 与 SpacetimeDB 模块展示卡片不再从 dangerLevel 读取副标题或场景上下文。
  • 测试夹具移除 dangerLevel 输入,避免新测试继续固化该字段。

兼容策略

  • 旧存档或旧 LLM 返回中若仍包含 dangerLevel,前端和 Rust 归一化流程不再读取或回写该字段。
  • 不新增替代字段;需要表达危险、压迫或安全感时,写入 descriptionvisualDescriptionmoodsceneTaskDescription 或幕级描述。
  • server-node 旧实现不作为兼容目标,本次仅清理当前前端、共享协议与 server-rs 链路。

编码落点

  • src/types/customWorld.ts:删除场景类型上的 dangerLevel
  • src/prompts/customWorldPrompts.tsserver-rs/crates/api-server/src/prompt/foundation_draft.rs:删除所有生成/修复 dangerLevel 的模板与约束。
  • src/services/customWorld.tssrc/services/customWorldCamp.tssrc/services/customWorldBuilder.ts:删除归一化和 fallback 写入。
  • src/data/customWorldLibrary.tssrc/data/customWorldSceneGraph.tssrc/data/customWorldVisuals.ts:删除持久化、场景图谱和视觉上下文映射。
  • server-rs/crates/api-serverserver-rs/crates/spacetime-module:删除 Rust 侧默认 JSON、提示词、实体卡片副标题和场景上下文读取。