| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275 |
- // ==============================================================================
- // 江中肝纯片 · Ch1 诘问起点(3 子章)
- // ==============================================================================
- // 1.1 DMY 原料真力·但用户零认知
- // 1.2 海王金樽警示·硬广洗脑型失败案例
- // 1.3 VOC 反向验证·方法论起点
- // ==============================================================================
- const LA = require('./liver-analyze.js');
- const C = require('./liver-components.js');
- const { BRAND, esc, fmtLikes } = C;
- // ==========================================================
- // 1.1 · DMY 原料真力·但用户零认知
- // ==========================================================
- function renderSub1_1(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- // 证据 A:江中肝纯片/护肝片的用户认知(提及"水飞蓟"仍是主导框架)
- const mind1 = LA.getEvidence(items, {
- keyword: '肝纯片', contentMatch: /水飞蓟|silymarin|葵花|易善复/i,
- minChars: 20, minLikes: 1, top: 3, seed: 5,
- });
- // 证据 B:藤茶被用户讨论时的真实话题:茶饮 / 降糖 / 野生 / 老人家,不是护肝
- const teng = LA.getEvidence(items, {
- keyword: '藤茶',
- contentMatch: /藤茶|莓茶|茶|喝|老人|野生|降糖|脑梗|回甘|婆婆|妈妈|冲泡/,
- minChars: 20, top: 3, seed: 9,
- });
- // 证据 C:国际 Amazon dihydromyricetin 正向好评(说明 DMY 在海外已有认知)
- const amzDmy = items.filter((it) => it.keyword === 'dihydromyricetin' && it.rating >= 4 && (it.content || '').length >= 30)
- .sort((a, b) => (b.likes || 0) - (a.likes || 0)).slice(0, 3);
- const vocLeft = mind1.slice(0, 3);
- const vocRight = [...teng.slice(0, 2), ...amzDmy.slice(0, 1)].filter(Boolean).slice(0, 3);
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 产品困境直面`,
- title: '<span style="color:' + BRAND.TENGCHA_GREEN + ';">DMY 原料真力</span>,但<span style="color:' + BRAND.CORAL + ';">用户零认知</span>',
- subtitle: '肝纯片握有"藤茶总黄酮 98%"的原料真差异化,但用户心智仍然停留在"水飞蓟"框架里——<strong>真差异化但说不清</strong>是我们真正的起点困境。',
- color: BRAND.CORAL,
- })}
- ${C.renderInsightHero({
- eyebrow: 'THE CONCEPT GAP · 认知鸿沟',
- color: BRAND.CORAL,
- title: `<strong style="color:${BRAND.TENGCHA_GREEN};">"江中肝纯片 = 藤茶 + DMY 二氢杨梅素"</strong> 这句产品真相,目前<strong style="color:${BRAND.CORAL};">没有任何一个 VOC 原声</strong>主动说出来。<br/>当用户问"这个护肝片"时,他们仍然在<strong style="color:${BRAND.CORAL};">"水飞蓟"框架内</strong>对照成分——这是我们必须先破局的认知锁。`,
- subtitle: `与此同时,<strong style="color:${BRAND.JIANG_GREEN};">dihydromyricetin 在 Amazon 已经是一个成熟的 GENZ 独立子类</strong>(485 条 reviews · ★4.3 均分)——<strong style="color:${BRAND.JIANG_GREEN};">国际市场对 DMY 的认知比国内强得多</strong>,国内反而是价值洼地。`,
- })}
- <div class="grid" style="grid-template-columns:1fr 1fr; gap:24px; margin-top:24px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 用户仍在"水飞蓟"框架里问护肝片</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${vocLeft.map((it) => C.renderVocCard(it, { accent: BRAND.CORAL, compact: true, maxChars: 200 })).join('')}
- </div>
- </div>
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.TENGCHA_GREEN}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · "藤茶" 被识别为茶饮 / 养生 / 降血糖·不是护肝</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${vocRight.map((it) => C.renderVocCard(it, { accent: BRAND.TENGCHA_GREEN, compact: true, maxChars: 200 })).join('')}
- </div>
- </div>
- </div>
- <div class="fade-up" style="margin-top:28px;">
- ${C.renderCompareTable({
- title: 'GAP · 产品真相 vs 用户心智',
- headers: ['对比维度', '产品真相', '用户当前心智'],
- rows: [
- ['核心成分', { html: `<span style="color:${BRAND.TENGCHA_GREEN}; font-weight:700;">藤茶 DMY 总黄酮 98%</span>`, color: BRAND.TENGCHA_GREEN }, { html: `<span style="color:${BRAND.CORAL};">水飞蓟宾为主导认知</span>`, color: BRAND.CORAL }],
- ['成分故事', { html: `<span style="color:${BRAND.TENGCHA_GREEN}; font-weight:700;">中国西南千年草本</span>`, color: BRAND.TENGCHA_GREEN }, { html: `<span style="color:${BRAND.CORAL};">国外进口更值得信赖</span>`, color: BRAND.CORAL }],
- ['起效机理', { html: `<span style="color:${BRAND.TENGCHA_GREEN}; font-weight:700;">清解酒后头疼 + 抗氧化护肝</span>`, color: BRAND.TENGCHA_GREEN }, { html: `<span style="color:${BRAND.CORAL};">"吃了没感觉 = 没效果"</span>`, color: BRAND.CORAL }],
- ['现有符号', { html: `<span style="color:${BRAND.TENGCHA_GREEN}; font-weight:700;">江中品牌 + 官旗正品</span>`, color: BRAND.TENGCHA_GREEN }, { html: `<span style="color:${BRAND.CORAL};">"跟 Swisse 比贵不贵"</span>`, color: BRAND.CORAL }],
- ['场景', { html: `<span style="color:${BRAND.TENGCHA_GREEN}; font-weight:700;">应酬解酒 + 脂肪肝 + 熬夜</span>`, color: BRAND.TENGCHA_GREEN }, { html: `<span style="color:${BRAND.CORAL};">"护肝片是不是智商税"</span>`, color: BRAND.CORAL }],
- ['破局', { html: '真差异化', color: BRAND.TENGCHA_GREEN, bold: true }, { html: '认知教育', color: BRAND.CORAL, bold: true }],
- ],
- accent: BRAND.LIVER_AMBER,
- })}
- </div>
- ${C.renderDecisionList([
- `<strong>认知破局放第一位</strong>:所有文案必须回答"藤茶是什么、DMY 是什么、为什么是真的"`,
- `<strong>锚点:千年食饮史</strong>,不是"新发现的原料"——避开智商税叙事陷阱`,
- `<strong>国际 DMY 认知倒灌</strong>:引用 Amazon 485+ 好评作背书("Lifesaver")`,
- `<strong>不与水飞蓟打正面</strong>:在水飞蓟框架外建立 DMY 子心智`,
- ], { title: '落地决策 · 认知破局三条铁律', accent: BRAND.CORAL, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 1.2 · 海王金樽警示·硬广洗脑型失败案例
- // ==========================================================
- function renderSub1_2(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- // 证据 A:海王金樽 硬广/广告 用户反感 声音
- const hwads = LA.getEvidence(items, {
- keyword: '海王金樽',
- contentMatch: /广告|老哒|硬广|洗脑|杠杠|营销|神/i,
- minChars: 12, top: 4, seed: 5,
- });
- // 证据 B:海王金樽 用户对"不信任解酒"的态度(替代品 + 土办法)
- const hwAlt = LA.getEvidence(items, {
- keyword: '海王金樽',
- contentMatch: /电解质|不好使|难受|馄饨|醋|醒酒|土办法|喝酒前|秘密武器/i,
- minChars: 15, top: 3, seed: 11,
- });
- // 证据 C:整个解酒神器品类的情绪——硬广透支
- const solveAll = LA.getEvidence(items, {
- keyword: '解酒神器',
- contentMatch: /商家|死呗|对手|酒蒙子|催吐|横竖|难受怎么/i,
- minChars: 15, top: 3, seed: 13,
- });
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 失败案例复盘`,
- title: '<span style="color:' + BRAND.CORAL + ';">海王金樽警示</span>:硬广洗脑 × 体感寡淡 = 品类信任透支',
- subtitle: '海王金樽是"解酒保肝"赛道曾经的头部玩家,硬广把品类做"出了圈"却把<strong>信任做没了</strong>——肝纯片不能再走这条路。',
- color: BRAND.CORAL,
- })}
- ${C.renderInsightHero({
- eyebrow: 'THE FAILED PLAYBOOK · 前车之鉴',
- color: BRAND.WINE_RED,
- title: `海王金樽在抖音被 <strong style="color:${BRAND.CORAL};">"老哒广告做得杠杠的[捂脸][捂脸][捂脸]"</strong> 的反讽绑定——用户已经<strong>把品牌和硬广洗脑连在一起记忆</strong>,这是品牌资产的反向贬值。`,
- subtitle: `与此同时<strong style="color:${BRAND.CORAL};">"解酒神器"整个品类</strong>被"商家:横竖都是死呗"式高赞吐槽(XHS ♥7295)污染,<strong>用户已经不信任何解酒广告承诺</strong>。肝纯片如果继续 "广告轰炸 + 符号化" 套路,只会被同一套反叙事吞噬。`,
- })}
- <div class="grid" style="grid-template-columns:1.1fr 0.9fr; gap:24px; margin-top:24px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 海王金樽"硬广 / 老哒"反讽连锁</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${[...hwads, ...hwAlt].slice(0, 4).map((it) => C.renderVocCard(it, { accent: BRAND.WINE_RED, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.WARM_ORANGE}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · "解酒神器" 品类整体信任透支</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${solveAll.slice(0, 3).map((it) => C.renderVocCard(it, { accent: BRAND.WARM_ORANGE, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- </div>
- <div class="fade-up" style="margin-top:28px;">
- ${C.renderCompareTable({
- title: 'PLAYBOOK · 海王金樽路径 vs 肝纯片路径',
- headers: ['维度', '海王金樽(已失败)', '肝纯片(必须走)'],
- rows: [
- ['核心打法', { html: `<span style="color:${BRAND.CORAL};">硬广 × 品牌符号 × 广告词复读</span>`, color: BRAND.CORAL }, { html: `<span style="color:${BRAND.JIANG_GREEN}; font-weight:700;">真原料 × 真科学 × 真场景</span>`, color: BRAND.JIANG_GREEN }],
- ['体感承诺', { html: `<span style="color:${BRAND.CORAL};">空泛"解酒护肝"无锚点</span>`, color: BRAND.CORAL }, { html: `<span style="color:${BRAND.JIANG_GREEN}; font-weight:700;">藤茶 DMY 清酒后头疼可感知</span>`, color: BRAND.JIANG_GREEN }],
- ['用户印象', { html: `<span style="color:${BRAND.CORAL};">"老哒广告"被嘲讽记忆</span>`, color: BRAND.CORAL }, { html: `<span style="color:${BRAND.JIANG_GREEN}; font-weight:700;">江中 OTC 品质背书</span>`, color: BRAND.JIANG_GREEN }],
- ['复购逻辑', { html: `<span style="color:${BRAND.CORAL};">一次性广告冲动</span>`, color: BRAND.CORAL }, { html: `<span style="color:${BRAND.JIANG_GREEN}; font-weight:700;">场景日常养护</span>`, color: BRAND.JIANG_GREEN }],
- ['信任资产', { html: `<span style="color:${BRAND.CORAL};">被"硬广"吞噬</span>`, color: BRAND.CORAL }, { html: `<span style="color:${BRAND.JIANG_GREEN}; font-weight:700;">藤茶文化 + 真评论沉淀</span>`, color: BRAND.JIANG_GREEN }],
- ['本质', { html: '品牌透支', color: BRAND.CORAL, bold: true }, { html: '认知积累', color: BRAND.JIANG_GREEN, bold: true }],
- ],
- accent: BRAND.LIVER_AMBER,
- })}
- </div>
- ${C.renderDecisionList([
- `<strong>明令禁止</strong>:不做硬广 "永远的神" 式口号复读,不做"老哒"式 KOL 绑定`,
- `<strong>场景真实</strong>:所有推广内容必须"原生 + 真场景",而非洗脑 TVC`,
- `<strong>体感可感知</strong>:藤茶 DMY 的"清解酒后头疼"是可感知锚点,<em>能用来</em>解释"为什么"`,
- `<strong>不骂海王金樽</strong>:警示自用,不在外宣里攻击竞品(避免自降格调)`,
- ], { title: '落地决策 · 避开硬广陷阱四条铁律', accent: BRAND.WINE_RED, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 1.3 · VOC 反向验证·方法论起点
- // ==========================================================
- function renderSub1_3(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data, meta } = ctx;
- const totalComments = meta?.comments || 0;
- const hs = meta?.hypotheses || {};
- // 8 假设 H1-H8 的证据体量
- const hypoRows = [
- { id: 'H1', title: '藤茶/DMY 认知空白', count: hs.H1 || 0 },
- { id: 'H2', title: '海王金樽为什么没成', count: hs.H2 || 0 },
- { id: 'H3', title: '护肝片副作用恐惧', count: hs.H3 || 0 },
- { id: 'H4', title: '脂肪肝+熬夜声量', count: hs.H4 || 0 },
- { id: 'H5', title: '五大竞品心智地图', count: hs.H5 || 0 },
- { id: 'H6', title: '送长辈护肝空白', count: hs.H6 || 0 },
- { id: 'H7', title: '礼盒心智 · "有面子"', count: hs.H7 || 0 },
- { id: 'H8', title: 'Amazon 国际对标', count: hs.H8 || 0 },
- ].map((r) => ({
- label: `${r.id} · ${r.title}`,
- value: r.count,
- valueLabel: r.count.toLocaleString(),
- color: r.count > 1000 ? BRAND.TECH_BLUE
- : r.count > 500 ? BRAND.LIVER_AMBER
- : r.count > 200 ? BRAND.JIANG_GREEN
- : BRAND.WARM_ORANGE,
- }));
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 方法论起点`,
- title: '<span style="color:' + BRAND.LIVER_AMBER + ';">VOC 实证</span> × <span style="color:' + BRAND.PURPLE + ';">理论模型</span> × <span style="color:' + BRAND.SAGE + ';">决策映射</span>',
- subtitle: '每一个结论都必须有<strong>多平台 VOC 原声 + 理论模型映射 + 可落地决策项</strong> 三重交叉。本报告围绕 8 条核心假设 H1-H8 展开验证。',
- color: BRAND.LIVER_AMBER,
- })}
- ${C.renderStatStrip([
- { num: totalComments.toLocaleString(), label: '真实 VOC', color: BRAND.LIVER_AMBER },
- { num: '3', label: '采集平台', color: BRAND.TECH_BLUE },
- { num: '32', label: '关键词维度', color: BRAND.JIANG_GREEN },
- { num: '8', label: '核心假设', color: BRAND.PURPLE },
- { num: '38', label: 'slides', color: BRAND.SAGE },
- ], { accent: BRAND.LIVER_AMBER })}
- <div class="grid" style="grid-template-columns:1.3fr 1fr; gap:24px; margin-top:24px;">
- <div>
- ${C.renderBarChart(hypoRows, { accent: BRAND.LIVER_AMBER, title: '8 假设 × VOC 证据厚度', height: 320 })}
- </div>
- <div>
- ${C.renderTheoryBox({
- theory: 'METHODOLOGY · 三重交叉验证框架',
- accent: BRAND.PURPLE,
- mapping: `
- <div style="display:flex; flex-direction:column; gap:14px; font-size:0.92rem;">
- <div style="padding:12px 14px; background:${BRAND.LIVER_AMBER}10; border-left:3px solid ${BRAND.LIVER_AMBER}; border-radius:4px;">
- <div style="color:${BRAND.LIVER_AMBER}; font-weight:700; margin-bottom:4px;">① VOC 实证(原声证据)</div>
- <div style="color:var(--text-2); font-size:0.86rem; line-height:1.6;">每个假设至少 3 条带<em>昵称+IP+点赞数</em>的真实评论,覆盖小红书/抖音/Amazon 三平台</div>
- </div>
- <div style="padding:12px 14px; background:${BRAND.PURPLE}10; border-left:3px solid ${BRAND.PURPLE}; border-radius:4px;">
- <div style="color:${BRAND.PURPLE}; font-weight:700; margin-bottom:4px;">② 理论模型(决策工具)</div>
- <div style="color:var(--text-2); font-size:0.86rem; line-height:1.6;"><strong>KANO</strong>(必备/期望/兴奋)+ <strong>JTBD</strong>(F/E/S)+ <strong>场景四元素</strong>(时间×空间×触发×人群)</div>
- </div>
- <div style="padding:12px 14px; background:${BRAND.SAGE}10; border-left:3px solid ${BRAND.SAGE}; border-radius:4px;">
- <div style="color:${BRAND.SAGE}; font-weight:700; margin-bottom:4px;">③ 决策映射(落地可执行)</div>
- <div style="color:var(--text-2); font-size:0.86rem; line-height:1.6;">每个子章收尾 = <em>4-6 条 P0/P1 决策项</em>,直接对应 SKU / 包装 / 话术 / 价格 / 渠道决定</div>
- </div>
- </div>
- `,
- })}
- </div>
- </div>
- <div class="fade-up" style="margin-top:28px;">
- ${C.renderInsightHero({
- eyebrow: 'HYPOTHESIS MATRIX · 8 假设矩阵',
- color: BRAND.LIVER_AMBER,
- title: `<strong style="color:${BRAND.LIVER_AMBER};">H1-H8 全部有证据</strong>,其中 <strong style="color:${BRAND.TECH_BLUE};">H8 (Amazon 国际对标 2085 条)</strong> 和 <strong style="color:${BRAND.TECH_BLUE};">H5 (5 竞品心智 1508 条)</strong> 最厚,<strong style="color:${BRAND.WARM_ORANGE};">H6 (送长辈 80 条)</strong> 最薄但正是空白机会。`,
- subtitle: `证据厚度不均反映市场注意力分布:国际已经 DMY 成熟、国内 5 竞品被讨论透了,<strong>国产礼品装护肝是全品类空白机会</strong>——这是本报告后续章节反复挖掘的金矿。`,
- })}
- </div>
- ${C.renderDecisionList([
- `<strong>假设驱动的报告结构</strong>:每个章节开头明示"验证哪几条假设",结尾总结"假设成立 / 被推翻 / 被修正"`,
- `<strong>VOC 数据可追溯</strong>:每条引用带 <code>platform · 昵称 · IP · 点赞数 · keyword</code>,可 grep 回溯到 jsonl 行号`,
- `<strong>理论不装饰</strong>:KANO/JTBD 不是摆拍,必须映射到 SKU/话术/包装的具体决策`,
- `<strong>决策 P0 先做</strong>:每章 P0 决策 ≤ 3 条,避免"30 条建议 = 0 条动作"`,
- ], { title: '方法论自律 · 报告纪律四条', accent: BRAND.PURPLE, columns: 2 })}
- </div>
- </section>`;
- }
- module.exports = {
- 'challenge-1': renderSub1_1,
- 'challenge-2': renderSub1_2,
- 'challenge-3': renderSub1_3,
- };
|