From 079b36167957a7719b8c3263efc169b4759262c8 Mon Sep 17 00:00:00 2001 From: liangxu Date: Fri, 1 May 2026 12:25:29 +0800 Subject: [PATCH] fix(migrations): escape wizard config json strings --- ...20260401130000_backfill_template_wizard_configs.up.sql | 8 ++++---- ...60000_update_product_review_wizard_intro_hook.down.sql | 2 +- ...1160000_update_product_review_wizard_intro_hook.up.sql | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/server/migrations/20260401130000_backfill_template_wizard_configs.up.sql b/server/migrations/20260401130000_backfill_template_wizard_configs.up.sql index 82b5e2f..b0c9cd9 100644 --- a/server/migrations/20260401130000_backfill_template_wizard_configs.up.sql +++ b/server/migrations/20260401130000_backfill_template_wizard_configs.up.sql @@ -67,7 +67,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 推 "outline_prompt_template": "你正在为一篇推荐类文章生成实用大纲。\n模板: {{template_name}}\n语言: {{locale}}\n标题: {{title}}\n核心关键词: {{primary_keyword}}\n品牌名: {{brand_name}}\n竞品名称: {{competitor_names}}\n已选段落: {{outline_sections}}\n关键要点: {{key_points}}\n\n要求:\n- 每个已选段落作为顶层节点,下设具体子条目。\n- 网站列表段落下按竞品逐一展开。\n- 内容应具体、有对比、有结论导向,避免泛泛而谈。\n- 使用与 locale 一致的语言。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"选购建议"", + "custom_placeholder": "补充一个额外结构,例如\"选购建议\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [ @@ -164,7 +164,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 产 "title_prompt_template": "你正在为一篇产品评测文章生成 5 个候选标题。\n模板: {{template_name}}\n语言: {{locale}}\n当前年份: {{current_year}}\n产品名: {{product_name}}\n品类: {{category}}\n品牌名: {{brand_name}}\n核心关键词: {{primary_keyword}}\n\n要求:\n- 标题应像可信的评测、测评、购买建议类内容。\n- 用具体表达代替空洞口号。\n- 当 locale 为 zh-CN 时,标题应贴合中文内容平台风格,可使用评测、实测、值不值得买、优缺点、怎么选等表达。\n- 返回 5 个角度明确不同的标题。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"购买建议"", + "custom_placeholder": "补充一个额外结构,例如\"购买建议\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [ @@ -250,7 +250,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 研 "outline_prompt_template": "你正在为一篇研究报告文章生成实用大纲。\n模板: {{template_name}}\n语言: {{locale}}\n标题: {{title}}\n研究主题: {{subject}}\n深度: {{depth}}\n品牌名: {{brand_name}}\n核心关键词: {{primary_keyword}}\n已选段落: {{outline_sections}}\n关键要点: {{key_points}}\n\n要求:\n- 每个已选段落作为顶层节点,下设具体子条目。\n- 关键发现段落应按数据驱动的方式组织子条目。\n- 内容应具有结构性、分析深度和可操作性。\n- 使用与 locale 一致的语言。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"行动建议"", + "custom_placeholder": "补充一个额外结构,例如\"行动建议\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [ @@ -339,7 +339,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 品 "outline_prompt_template": "你正在为一篇品牌词搜索扩写文章生成实用大纲。\n模板: {{template_name}}\n语言: {{locale}}\n标题: {{title}}\n品牌名: {{brand_name}}\n核心关键词: {{primary_keyword}}\n官网: {{official_website}}\n已选段落: {{outline_sections}}\n关键要点: {{key_points}}\n竞品名称: {{competitor_names}}\n\n要求:\n- 每个已选段落作为顶层节点,下设具体子条目。\n- 品牌概览段落应覆盖品牌定位、核心产品和差异化。\n- 对比段落应按竞品逐一展开对比维度。\n- 内容应回答搜索意图,语气客观有信息量。\n- 使用与 locale 一致的语言。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"常见问题"", + "custom_placeholder": "补充一个额外结构,例如\"常见问题\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [ diff --git a/server/migrations/20260401160000_update_product_review_wizard_intro_hook.down.sql b/server/migrations/20260401160000_update_product_review_wizard_intro_hook.down.sql index a5f64fa..860a6bd 100644 --- a/server/migrations/20260401160000_update_product_review_wizard_intro_hook.down.sql +++ b/server/migrations/20260401160000_update_product_review_wizard_intro_hook.down.sql @@ -59,7 +59,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 产 "title_prompt_template": "你正在为一篇产品评测文章生成 5 个候选标题。\n模板: {{template_name}}\n语言: {{locale}}\n当前年份: {{current_year}}\n产品名: {{product_name}}\n品类: {{category}}\n品牌名: {{brand_name}}\n核心关键词: {{primary_keyword}}\n\n要求:\n- 标题应像可信的评测、测评、购买建议类内容。\n- 用具体表达代替空洞口号。\n- 当 locale 为 zh-CN 时,标题应贴合中文内容平台风格,可使用评测、实测、值不值得买、优缺点、怎么选等表达。\n- 返回 5 个角度明确不同的标题。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"购买建议"", + "custom_placeholder": "补充一个额外结构,例如\"购买建议\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [ diff --git a/server/migrations/20260401160000_update_product_review_wizard_intro_hook.up.sql b/server/migrations/20260401160000_update_product_review_wizard_intro_hook.up.sql index 027b064..0e2daa0 100644 --- a/server/migrations/20260401160000_update_product_review_wizard_intro_hook.up.sql +++ b/server/migrations/20260401160000_update_product_review_wizard_intro_hook.up.sql @@ -72,7 +72,7 @@ SET prompt_template = $$根据提供的摘要撰写一篇完整的 Markdown 产 "title_prompt_template": "你正在为一篇产品评测文章生成 5 个候选标题。\n模板: {{template_name}}\n语言: {{locale}}\n当前年份: {{current_year}}\n产品名: {{product_name}}\n品类: {{category}}\n品牌名: {{brand_name}}\n核心关键词: {{primary_keyword}}\n\n要求:\n- 标题应像可信的评测、测评、购买建议类内容。\n- 用具体表达代替空洞口号。\n- 当 locale 为 zh-CN 时,标题应贴合中文内容平台风格,可使用评测、实测、值不值得买、优缺点、怎么选等表达。\n- 返回 5 个角度明确不同的标题。", "outline": { "allow_custom": true, - "custom_placeholder": "补充一个额外结构,例如"购买建议"", + "custom_placeholder": "补充一个额外结构,例如\"购买建议\"", "preview_title": "文章预览", "preview_caption": "预览会根据已选标题和结构实时更新。", "sections": [