155 Commits

Author SHA1 Message Date
hub-gif
0e8f5d2123 fix(strategy): 第三节3.1对齐「为何要购买这一款」并约束宏观时机套话
Made-with: Cursor
2026-04-22 10:08:45 +08:00
hub-gif
369fab23eb fix(frontend): 策略生成页去掉§与论文章节号,改用业务可读标题
Made-with: Cursor
2026-04-22 10:03:33 +08:00
hub-gif
4dde9a9812 fix(frontend): 策略表单 legend/hint/placeholder 与成稿章节语义对齐
Made-with: Cursor
2026-04-22 10:00:16 +08:00
hub-gif
7b7928907f fix(frontend): 策略生成表单按成稿§0~§10重排并标明§2~§4无表单项
Made-with: Cursor
2026-04-22 09:56:29 +08:00
hub-gif
39929ea600 fix(frontend): 策略表单第五节竞争字段文案与选项对齐§5.3语义
Made-with: Cursor
2026-04-22 09:54:02 +08:00
hub-gif
bf2ad14d23 fix(strategy): LLM 用策略骨架去掉小节标题(占位)与待填表行
Made-with: Cursor
2026-04-22 09:41:44 +08:00
hub-gif
3f6c750ac4 fix(strategy): 矩阵收窄时 §5.1 集中度注明非列表行口径
strategy_scope_applied 下 concentration 来自分组内合并 SKU;修正店铺/品牌叙事措辞并加口径说明,避免与全关键词列表行混淆。

Made-with: Cursor
2026-04-21 17:25:57 +08:00
hub-gif
44fa291eb3 fix(strategy): 价位阵地归入第八章,与「为什么选品牌」解耦
底稿第四章仅保留承诺与信任;贴顶/卡腰等勾选移至 §8.2。前端表单项并入战术支柱分组;补充测试与 OpenAPI、规划表说明。

Made-with: Cursor
2026-04-21 17:16:14 +08:00
hub-gif
42caa06013 feat(frontend): 策略生成表单与成稿目录结构对齐
重组 fieldset 顺序与文案(策略范围与前提、四~八章对应、业务备注);更新顶部说明与矩阵细类标签;补充 fieldset 提示样式。

Made-with: Cursor
2026-04-21 17:12:29 +08:00
hub-gif
b7056fe627 fix(strategy): LLM 底稿去掉写作说明并禁止成稿出现章节对齐套话
Made-with: Cursor
2026-04-21 17:09:58 +08:00
hub-gif
4cf73e7602 feat(strategy): 无表单决策时由大模型推断草案并净化对外成稿约束
新增 strategy_decisions_substantive 与 JSON 载荷字段;STRATEGY_SYSTEM/USER_PREFIX 要求实质成稿、禁止技术泄露;build_strategy_draft_markdown(for_llm_input=True) 供归纳用弱化路径与字段名。规则下载稿默认行为不变。

Made-with: Cursor
2026-04-21 17:03:55 +08:00
hub-gif
805e9b4de4 fix(report): 默认关闭第九章策略大模型并改为读者说明
默认 report_config.llm_strategy_opportunities 为 false;第九章无大模型正文时输出固定说明并指向按细类「策略制定」。strategy 节选仅在 strategy_opportunities_llm.json 含 markdown 时返回,避免固定说明进入策略稿对齐。同步调整单测与 strategy_hints 占位文案。

Made-with: Cursor
2026-04-21 16:59:07 +08:00
hub-gif
e03c19928c fix(pipeline): 报告默认开启 llm_comment_sentiment(8.3 按细类情感)
Made-with: Cursor
2026-04-21 13:37:41 +08:00
hub-gif
50a9867d02 fix(pipeline): 8.3情感子标题降为五级以便细类报告摘录命中
strategy 侧 load_report_matrix_group_evidence 按 #### 细类 抽取时在下一行 #### 即截断,导致正/负向主题正文丢失;在 matrix_group_focus 成稿后对四个固定小节做 ####→##### 后处理,并补充单测。

Made-with: Cursor
2026-04-21 11:43:50 +08:00
hub-gif
30f1b038fa chore(demo): 单细类8.3情感LLM试跑脚本(不整报告重生成)
Made-with: Cursor
2026-04-21 11:13:35 +08:00
hub-gif
d3dec53a8f feat(pipeline): 按细类生成评价正/负向主题并写入报告8.3
开启 llm_comment_sentiment 时对每个矩阵细类单独构建情感载荷并调用模型;报告新增 8.3 小节,与探针及细类评论要点归纳并列。补充 jd_report 对 build_comment_sentiment_llm_payload 的导出、comment_sentiment_llm.json schema_version 2 与 groups 记录。前端表单说明与演示脚本注释同步更新。

Made-with: Cursor
2026-04-21 11:07:03 +08:00
hub-gif
396ccd941a fix(llm): 评论细类归纳载荷移除 focus_hit_lines 并对齐系统提示
build_comment_groups_llm_payload 不再传入关注词或生成子串命中摘要;COMMENT_GROUPS_SYSTEM 仅依据 effective_text_lines 与 sample_text_snippets。探针合并与 PROBE 提示词去掉 focus_hit_lines 表述;runner/演示脚本去掉无效的 comment_focus_words 装配。

Made-with: Cursor
2026-04-21 10:35:52 +08:00
hub-gif
30ea9783b3 docs: 对齐竞品报告第八章新节号与情感 LLM 说明
第三节/§8.3 改为第二节/§8.2(关注词与场景路径);策略规划表区分报告章与策略稿 §8.x;快照 omission_note 与 brief 无 lexicon 一致;generate_sections/comment_sentiment 注释反映报告不再发图。

Made-with: Cursor
2026-04-21 10:32:06 +08:00
hub-gif
23ddf115ee feat(报告): 移除第八章预设口语短语情感小节并重编号
删除评价正负面粗判(扇形图、口语短语条形图、摘要及同口径 LLM 块);文本挖掘/关注词路径统一为新的 8.2;brief 不再含 comment_sentiment_lexicon;默认关闭 llm_comment_sentiment;清理旧插图文件名;同步策略与全稿提示。

Made-with: Cursor
2026-04-21 10:29:26 +08:00
hub-gif
7506f9795c fix(strategy): 探针模式下从 structured_brief 再移除策略提示与情感词表
与第八章条形图同源的策略提示句和规则情感词表不再传入策略大模型;导出脚本与快照已同步,单测覆盖省略字段。

Made-with: Cursor
2026-04-21 09:51:28 +08:00
hub-gif
ce4cef3235 fix(strategy): 探针模式下从 structured_brief 移除按细类关注词/场景子串
补充 _omit_ch8_probe_wordchart_fields:删除 consumer_feedback 内 focus_keyword_hits 与 scenarios_top;与文本挖掘主口径一致。导出脚本与 omission 说明同步;更新全量输入快照。

Made-with: Cursor
2026-04-21 09:42:46 +08:00
hub-gif
9cf48e4d7b feat(frontend): 策略生成页增加策略类目(矩阵细类)选择
从 competitor-brief 拉取 matrix_groups;提交 strategy_matrix_group;本地记忆每任务所选。

Made-with: Cursor
2026-04-20 18:01:46 +08:00
hub-gif
36ad21de6e feat(pipeline): 策略 LLM 并入宿主报告按细类的大模型归纳节选
从 competitor_analysis.md 抽取 #### 细类名 下正文;收窄矩阵分组时传入 report_matrix_group_evidence_md,并在系统提示中约定与 structured_brief 及第九章节选的分工。

Made-with: Cursor
2026-04-20 17:55:50 +08:00
hub-gif
6143ad6180 feat(pipeline): 策略生成按矩阵分组收窄 brief 输入
新增 strategy_matrix_group / strategy_matrix_group_index 请求参数;收窄后价盘与集中度按分组内 SKU 重算;摘要 GET 与策略 POST 响应附带 matrix_groups。

Made-with: Cursor
2026-04-20 17:45:15 +08:00
hub-gif
911ad203db feat(strategy): 策略范围与前提 + 启动前目标选项 A~E
底稿在摘要前增加立项表;规划文档写清业务应对齐项与选项;LLM 须先写清针对什么、空字段列待确认与选项。

Made-with: Cursor
2026-04-20 17:39:23 +08:00
hub-gif
3e60613025 feat(strategy): 全书与 §2.1 类目列对齐,压缩泛化表述
底稿:摘要/一~十 成稿提示增加按类目分句、分线与指回 §2.1。STRATEGY_DATA_RULES 与 STRATEGY_SYSTEM 增加全文类目一致与分节对齐条款。

Made-with: Cursor
2026-04-20 17:25:24 +08:00
hub-gif
186ba9bf42 feat(strategy): §2.1 表增加类目列并支持分策与待定类
底稿与 STRATEGY_DATA_RULES 明确多细类须分行;不确定可写待业务定类。恢复标题下骨架说明含全局禁止编造。示例与目录模板同步。

Made-with: Cursor
2026-04-20 17:23:56 +08:00
hub-gif
6b33e5ecf3 refactor(strategy): §二合并为针对痛点怎么做表并移除 §3.2
规则底稿仅保留 §2.1;价带摘录并入 §3.1;同步 STRATEGY_SYSTEM、规划文档、目录模板与示例稿。

Made-with: Cursor
2026-04-20 17:05:29 +08:00
hub-gif
cd4a4dea0e fix(strategy): 区分 §2.1 痛点与 §2.4 负向归因避免重复
提示词与底稿明确:痛点表为策略优先级;负向节为评论侧主题归因,重叠时互见一两句即可。

Made-with: Cursor
2026-04-20 16:57:42 +08:00
hub-gif
812cc1dac7 docs(strategy): 全局禁止编造贯穿底稿与规划
规则底稿骨架增加全局约束说明;规划与 alignment 文档对照表更新;测试断言骨架含「全局禁止编造」。generate_strategy 中全局条款与用户前缀若未提交则一并纳入。

Made-with: Cursor
2026-04-20 16:48:25 +08:00
hub-gif
71395d217c fix(strategy): 禁止 §2.1 编造用户引语与无依据痛点
在 STRATEGY_DATA_RULES 明确证据信号列须可溯源;无原话时写主题归纳或待抽样,禁止伪装成已监测结论。底稿与测试同步。

Made-with: Cursor
2026-04-20 16:45:04 +08:00
hub-gif
71ab78cf3a feat(strategy): 补齐痛点维度与示例稿 §2.5/促销
LLM:§2.1 须覆盖分量规格与口感分线,负向例证禁编造。底稿:§2.1 提示列全维度。示例:新增策略动作总表、扩展 §8.3;规划文档增加需求—实现对照表并标明营销 S2 另项。

Made-with: Cursor
2026-04-20 16:40:07 +08:00
hub-gif
6c6deb0ba8 docs(strategy): 补充口感分线与促销口径说明
在策略骨架 §8.3 与规划文档中明确:酥脆/松软按细类分线;促销须写原则,满减满折无数据时待运营对齐,禁止编造门槛。

Made-with: Cursor
2026-04-20 16:36:52 +08:00
hub-gif
c096f69082 refactor(strategy): 策略成稿章节顺序与 LLM 提示对齐
底稿重排为诊断→方向→4P→风险→约束→行动;前端表单 legend 与成稿章节一致;generate_strategy 系统提示约束一至十顺序;JdStrategyBuildView 补充成稿说明与 hint-flow 样式。

Made-with: Cursor
2026-04-17 17:59:02 +08:00
hub-gif
99bd2ef40d fix(strategy): 探针模式下剔除词频类 hints 并强制与报告促销/第九章对齐
- 规则底稿:过滤 strategy_hints 中与关注词/预设场景条形图同源的句子;§7 增加促销与活动对齐说明(price_promotion_signals、§6/§9)。
- LLM:payload 增加 chapter8_text_mining_probe;structured_brief 同步过滤 hints;系统提示与 omission_note 明确禁止用词频为据、须承接第九章与促销信号。

Made-with: Cursor
2026-04-17 17:42:20 +08:00
hub-gif
1a569ce727 fix(strategy): 规则底稿补充列表店铺去重SKU口径与摘要一致
竞争结构节在 shops_from_list.unique_sku_basis 存在时输出对照行,便于策略 LLM 与人工复核;新增单测。

Made-with: Cursor
2026-04-17 17:33:18 +08:00
hub-gif
1af6aa00a5 fix(llm): 禁止编造自营/SKU占比类店铺集中度表述
- 章节衔接、第九章策略归纳、8.5 补充与策略稿系统提示:店铺相关数字须来自 brief,区分列表行与去重 SKU,禁止虚构自营占比。
- 策略草案 STRATEGY_SYSTEM 同步禁止未在摘要中出现的店铺结构定量句。

Made-with: Cursor
2026-04-17 17:20:27 +08:00
hub-gif
ed28e00e74 fix(pipeline): 区分店铺列表行占比与去重SKU占比,避免误导
- 列表导出增加 unique_sku_basis(每 SKU 计 1 次),与按行计的集中度并列写入 brief 与执行摘要。
- 第四章解读与扇图说明强调「列表可见度」非市占;8.5 大模型提示禁止将行占比写成 SKU 款数占比或自营占比。
- 分析页摘要兼容 first_share 并展示去重 SKU 口径。

Made-with: Cursor
2026-04-17 17:19:20 +08:00
hub-gif
f09a46a79e feat(pipeline): 策略表单增加营销与总体策略并顺延规则稿章节
- API:marketing_strategy、general_strategy;规则骨架新增「二、营销策略与总体方向」,原 §2–§9 顺延为 §3–§10。
- LLM 提示与探针说明用语同步;OpenAPI、单测与策略生成页字段集「五」已对齐。

Made-with: Cursor
2026-04-17 17:08:25 +08:00
hub-gif
16d64565a3 feat(pipeline): 策略骨架缩短并强化策略生成决策边界
- 规则稿:章节重排为短骨架,去重复假设套话;探针模式三条占位,传统模式改为统计摘录句式。
- LLM:STRATEGY_SYSTEM 明确表单已定项不可反写,空项由数据补全,成稿禁止二次决策话术。
- API/前端:新增目标客群、主要对标、资源备注字段并传入 strategy_decisions。
- OpenAPI 与单测同步。

Made-with: Cursor
2026-04-17 17:04:24 +08:00
hub-gif
932c3d6aeb fix(strategy): 文本挖掘开启时策略稿不再依赖关注词/场景计数
报告配置 chapter8_text_mining_probe 为 True(默认)时,规则底稿第五节改为说明口径并去掉子串命中列表;LLM 请求从 structured_brief 剔除相关字段并附 omission_note。关闭探针时保留旧版第五节。任务 API 传入 report_config。

Made-with: Cursor
2026-04-17 16:56:08 +08:00
hub-gif
f06fd12f1f fix(llm): 策略稿润色预留 completion 预算,缓解输出截断
generate_strategy_draft_markdown_llm 按摘要/第九章节选/规则底稿分级收紧,满足最小 completion token 后再调用;底稿与 JSON 超限仍截断并提示。系统提示补充收束全文要求。

Made-with: Cursor
2026-04-17 16:48:05 +08:00
hub-gif
1229e49dbe refactor(frontend): 策略生成默认大模型,仅保留「本次规则稿」选项
移除「使用大模型」与保存策略偏好;buildPayload 默认 generator=llm;勾选本次仅规则稿时走 rules。后端默认 use_llm_default 改为 true。

Made-with: Cursor
2026-04-17 16:44:15 +08:00
hub-gif
7d219feb3c feat(pipeline): 策略页独立 strategy_config 与仅规则稿选项
新增 PipelineJob.strategy_config(默认 use_llm_default);GET /api/strategy-config-defaults/;PATCH 任务可保存策略偏好。策略生成页:本次仅规则稿复选框(默认关)、保存策略偏好、任务下拉去掉目录;第九章对齐仍由服务端默认处理。迁移 0021。

Made-with: Cursor
2026-04-17 16:41:20 +08:00
hub-gif
6e113bbdfe feat(pipeline): S1 策略稿与第九章对齐(report_strategy_excerpt)
新增 load_report_strategy_excerpt:优先 strategy_opportunities_llm.json 的 markdown,否则从 competitor_analysis.md 截取第九章;runner 成功时落盘 markdown 字段。STRATEGY_SYSTEM 收紧与 report_strategy_excerpt 一致及业务冲突标注。策略稿 API 返回节选来源与字符数;补充单测与 OpenAPI、规划文档。

Made-with: Cursor
2026-04-17 16:26:00 +08:00
hub-gif
224e7d0c16 docs(planning): 市场策略稿与营销内容对齐规划留痕
含事实源原则、S1~S4 实施顺序、关联代码路径与修订表,便于后续查阅。

Made-with: Cursor
2026-04-17 16:19:04 +08:00
hub-gif
6a308179ad test(pipeline): 在 tests/conftest 中 django.setup 以修复收集阶段 AppRegistryNotReady
pytest 收集含 pipeline.jd.runner 的测试时须先加载 Django;全量 pipeline/tests 现可一次跑通。

Made-with: Cursor
2026-04-17 14:56:35 +08:00
hub-gif
e4a05f3ce6 refactor(pipeline): 移除 csv_schema 等根目录中转,统一从 pipeline.csv 子包导入
- 删除 csv_schema.py、csv_header_rewrite.py、matrix_group_label.py(无引用)

- 全库改为 from pipeline.csv.schema / pipeline.csv.header_rewrite;文档字符串同步

- 与此前 jd_competitor_report 去中转同一策略

Made-with: Cursor
2026-04-17 14:48:32 +08:00
hub-gif
0e224c6a6c refactor(pipeline): 移除 jd_competitor_report 中转,统一导入 competitor_report.jd_report
- 删除 backend/pipeline/jd_competitor_report.py;runner/测试与演示改为 from pipeline.competitor_report import jd_report

- 爬虫目录 jd_competitor_report.py 仅调用 jd_report.main;文档与 OpenAPI 同步更新

- 命令行推荐:python -m pipeline.competitor_report.jd_report

Made-with: Cursor
2026-04-17 14:46:21 +08:00
hub-gif
5195aec2d7 fix(pipeline): 兼容入口全量同步 jd_report 符号含 _read_csv_rows
避免 import * 漏掉下划线辅助函数导致报告再生等接口 500。

Made-with: Cursor
2026-04-17 14:39:36 +08:00