1.4 KiB
1.4 KiB
拼图图片提示词脚本拆分
背景
拼图结果页的图片生成已经由 server-rs/crates/api-server/src/puzzle.rs 负责外部 I/O 编排、DashScope 请求、候选图落 OSS 与 SpacetimeDB 持久化。原先正式提示词和反向提示词也内联在同一文件里,后续调整拼图图片画面约束时容易误碰生成任务、资产绑定或候选池逻辑。
本轮落地边界
- 拼图图片提示词统一放到
server-rs/crates/api-server/src/prompt/puzzle_image.rs。 puzzle.rs只负责读取提示词构建结果,并继续处理 DashScope、OSS、SpacetimeDB 写回。- 提示词模块只暴露:
build_puzzle_image_prompt(level_name, prompt)PUZZLE_DEFAULT_NEGATIVE_PROMPT
- 文生图和图生图继续共用同一份最终提示词,避免同一玩法下出现两套画面约束。
编码约束
- 不把图片生成逻辑下沉到 SpacetimeDB reducer;外部 I/O 必须留在
api-server。 - 不改候选图 JSON 持久化结构,仍使用
module-puzzle::PuzzleGeneratedImageCandidate对应的 snake_case 字段。 - 不改前端 UI 文案和交互;本轮只拆后端提示词脚本。
- 后续若调整拼图图片风格、尺寸、禁止元素或切块可读性要求,优先修改
prompt/puzzle_image.rs,再按需补测试。
验收
cargo test -p api-server puzzle_image通过。npm run check:encoding通过,确认新增中文文档和 Rust 注释仍是 UTF-8。