Files
novalon-website/PRODUCT.md
T
zhangxiang 3ed3afd819 fix(metrics): 数字口径 basis 结构强制,删除详情页虚构佐证
复评 P0 收尾:把「每个数字带口径」从个别页自觉升级为结构性强制。
- metrics-basis.ts:METRIC_BASES / METRIC_BASIS_NOTES + resolveMetricBasis
  (缺失·非法·大小写错一律回落最弱 target)+ weakestBasis(一组数字取最弱者聚合)
  + FORBIDDEN_PROOF_PHRASES;MetricsBasisNote 收 basis prop
- 类型层 Product.metrics / DataProof / ServiceMetric / Solution.outcomes /
  DataMetric / about keyMetrics 全部加 basis?;9 处调用点改为 basis 驱动
- content-types.ts 新增共享 metricBasisField(select)展开进 9 处字段定义;
  trustSignals 有意跳过(已有自己的 source)。seed 显式声明 55 条 target
- 删除字面虚构佐证:详情页「每一项指标都源自真实客户案例」、「经过实战验证」×3、
  「来自真实客户的使用数据」、「经实际场景验证」;给此前完全裸奔的 3 个共享
  数字渲染器(DataProofSection / detail-trust / detail-product-value)补上角注
- metrics-basis.test 3→16 例:basis 解析正控制、weakestBasis 次序、seed 全量
  显式声明 + 覆盖证明(防空跑假绿)+ 禁任何条目自称 verified + 禁词全源码扫描
- 文档同源:DESIGN.md 立 The Declared-Basis Rule;PRODUCT.md 常驻禁令;
  CONTEXT.md 记决策并警示 admin 字段需重跑 seed 才激活

边界:CMS 字段定义存 ContentModel.fields(DB 内 JSON),basis 下拉须重跑 seed
才会出现在 admin 表单;本次 DB 与 seed 数据值零改动,渲染端对缺 basis 兜底 target。

Gates: type-check 0 · jest 1594/132 · contrast 7/7 · headings 10/10
lint 0e/128w(与 stash 基线逐行比对,零新增告警)
2026-09-20 10:38:23 +08:00

2.6 KiB
Raw Blame History

Design Context

Users

  • 中国企业决策者(CEO/CIO/CTO),寻求数字化转型服务
  • 使用场景:评估技术供应商、了解解决方案、发起咨询
  • 期望感受:专业可信、决断清晰、技术前沿

Brand Personality

  • 沉稳 · 精致 · 可信赖
  • 咨询顾问式的断言表达:答案先行、有立场、有依据
  • 不是高高在上的"专家",而是坐下来一起想办法的"同行者"

Aesthetic Direction

  • 风格: The Crimson Ledger(可审计的宣言)— 大字排印、细线分栏、克制的深红信号,像顶级咨询机构的账本页面
  • 参考: Bain / McKinsey 官网(答案先行的陈述式标题、数据条、结构化留白)
  • 核心视觉: 深红断言 Hero + hairline 账本分栏 + bain-card 细线卡片 + 编号数据条
  • 反参考: 过度装饰、花哨动画、多色渐变、拥挤布局;旧水墨体系(旋转渐变边框、鼠标跟随光晕)已退役

Design Principles

  1. 答案先行 — 标题直接给出结论与价值判断,不做悬案式文案;副标题与数据负责佐证
  2. 朱砂信号(Cinnabar Signal — 品牌红 #C41E3A 是唯一信号色:每页 ≥3 处触达点、面积 ≤10%;用于强调,绝不作装饰主色
  3. 账本骨架 — 层次由 hairline 分隔线、对齐网格与字号字重建立,而非颜色多样性或装饰性边框
  4. 安静底面 — 背景为白 / mist #F8FAFC 交替分区;深红区块与 ink #0A0E14 深色只留给 CTA 与收束区块
  5. 克制动效 — 动效服务于信息传达:180–280ms、--ease-ink、hover 轻 lift + shadow,不做循环装饰动画

视觉令牌

令牌权威来源为 DESIGN.md(含机器可读 YAML 令牌层与 .impeccable/design.json 侧车)。本文件不再罗列具体令牌值,仅保留产品级永久约束:

  • 品牌红 #C41E3A 每页 ≥3 触达点、面积 ≤10%
  • 字体全部使用本地文件(Geist woff2 + PingFang 回退),禁止外部字体 CDN
  • 动效时长 180280ms--transition-fast--transition-normal),缓动 cubic-bezier(0.22, 1, 0.36, 1)--ease-ink
  • 字距下限 -0.04em,不得更紧
  • 暗黑模式由 html[data-theme='dark'] 覆盖 CSS 变量驱动,组件不得写死颜色字面量
  • 楷体(--font-brand)为遗留例外,仅存量页面保留,新页面禁用
  • 大数字必须有口径:指标声明 basis: target|team-history|verified,未声明按「目标口径,非既成结果」自动标注;禁止宣称数字源自真实客户案例或实战验证(公司 2026-01 成立、零公开客户案例)