Skip to content

dashboards.zh-Hans.mdx / .zh-Hant.mdx still carry the drifted tile lists and the fabricated most-clicked claim fixed in #610 #685

Description

@yinlianghui

Found while implementing #610. Filed unassigned rather than fixed as a rider: the dispatch for #610 scoped the file surface to the English page, and these two files need retranslation, not a mechanical edit.

Problem

#610 rewrote content/docs/analytics/dashboards.mdx to describe the five dashboards the app actually registers, and deleted the invented usage statistic. The two locale copies were not touched and still carry the whole of the original defect:

Claim zh-Hans zh-Hant
"四个仪表盘" — the app registers five (sales_activity_dashboard, added by #592 / PR #670, is undocumented in both) L3, L8, L10 same
**Slipping Deals** — no such tile L51, L112 L51, L112
**Cases Approaching SLA** — no such tile L63 L63
**Customer Satisfaction (CSAT)** … 趋势 — no such tile, and no tile shows a trend after #587 L67 L67
The fabricated usage stat: "Cases Approaching SLA 磁贴是此仪表盘上点击最多的小部件" — the tile does not exist and this repo collects no click telemetry L72 L72 (磚貼)
**Net New ARR**, **CSAT and NPS** — not tiles, and not measures any dataset defines L83, L85 L83, L85

The most-clicked sentence is the one that matters most: it is a confident quantitative claim about a widget that does not exist, measured by nothing, and it is currently live for every zh reader.

Why the new guard does not cover them

The dashboards rule added to test/docs-drift.test.ts in #610 reads DOC_PAGES, which lists the English page only. The extraction itself is locale-agnostic — the bold tile names are left in English in both translations (- **Slipping Deals** — 本周成交日期被推后的商机。), so the same regex resolves them unchanged. Adding the two paths to DOC_PAGES is a one-line change; it was left out only because doing it while the prose is still the old text would land red CI.

Suggested fix

  1. Retranslate both pages against the current English page (five dashboards, real widget titles, no trend claims, no date picker on Sales Activity / Customer Service, the invented statistic deleted rather than softened).
  2. Add both paths to DOC_PAGES in the the dashboards docs page lists tiles that exist block of test/docs-drift.test.ts. The per-dashboard vacuity assertion then covers all three files, and the section-coverage assertion forces every locale to document a newly registered dashboard.

Note that the section headings must carry each dashboard's own label (emoji prefix aside) for the guard to find them — the labels are English (CRM Overview, Sales Performance, Sales Activity, Customer Service, Executive Overview), which matches what the zh pages already do with tile names.

Blocked-by: #610 (its English page is the source text to translate from; it has landed on claude/hotcrm-bug-triage-ks55ze).

Activity

  1. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    分诊(PM 派发循环,会话 session_0194QUW67v7vyLToEd9NSeRM):前提已独立复核为真,但不在本轮派发范围。

    复核(对照 claude/hotcrm-bug-triage-ks55ze):

    • dashboards.zh-Hans.mdx:72 —「Cases Approaching SLA 磁贴是此仪表盘上点击最多的小部件」
    • dashboards.zh-Hant.mdx:72 —「…點擊最多的小工具」
    • 两页各 5 处引用 Slipping Deals / Cases Approaching SLA / Net New ARR 等不存在的 tile。

    那条编造的定量统计对每一位中文读者都是活的,这是本单里最该优先处理的部分 —— 立单判断正确,不该作为 #610 的 rider 顺手改(需要重译而非机械替换,这个边界把握得对)。

    不在本轮派发的原因(如实记录):本次 bug 修复批次由维护者明确限定为「只评估 bug、排除所有国际化相关 issue」。本单的修法主体是两个语言页的重译,落在被排除的范围内,因此保持 pm:queue 未认领,交后续的 i18n 专项批次(与 #494 / #645 / #661 同批)处理。这不是对严重性的判断 —— 是排期范围的判断。

    另有一条硬依赖,无论谁接手都成立:Blocked-by #610(其英文页是翻译源文本;#610 已落在上述分支,待 PR #677 合并)。在 #677 合并前不要开工,否则译的是尚未定稿的源文。

    给接手者的便利已备好:test/docs-drift.test.ts 的 DOC_PAGES 数组加两个路径即可让守卫覆盖三份文件,注释里写明了这一点 —— 但必须在重译落地的同一个 PR 里加,先加会直接把 CI 弄红。


    Generated by Claude Code

  2. added
    bugSomething isn't working
    documentationImprovements or additions to documentation
    pm:queueReady for the PM dispatch loop
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Aug 5, 2026
  3. self-assigned this
    on Aug 5, 2026
  4. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    认领:PM 循环(17.0 发布修复线)第 3 轮
    会话:session_01VHrPAGEgFDoHjphqYG4BMa
    分支:claude/issue-685-dashboards-zh-retranslation
    Worktree:hotcrm-issue-685
    文件面:content/docs/analytics/dashboards.zh-Hans.mdx、dashboards.zh-Hant.mdx(对照英文页重译)、test/docs-drift.test.ts 的 DOC_PAGES 增两路径(⛔ 必须与重译同 PR,先加会红 CI)、changeset。

    解锁说明:本单的 Blocked-by #610 已随 PR #677 于今日合入(英文源文本已定稿);上一轮次的「i18n 专项批次」范围注记属于该批次自身的排期约束,本轮维护者已明确将本单列入可派发清单。#494 的认领(另一会话)在 src 翻译文件面上,与本单 docs 文件面不相交。


    Generated by Claude Code

  5. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    验收 ACCEPT(PM 复核,对照 GitHub 实况):PR #723,CI 9/9 绿(含 link-check 对新 /zh-Hans/ /zh-Hant/ 前缀的校验),已转 ready 并挂自动合并。

    复核要点:

    • 对照源不是文档而是元数据:五个仪表盘与 58 个真实 widget title 直接从 stack.dashboards dump 出来对照,与定稿英文页逐条一致;sales_activity_dashboard 此前在两个语言页完全没有章节,本次补齐。
    • 重译而非替换:编造的点击统计删除(没有可软化的真值内核)、趋势断言删除、Sales Activity / Customer Service 刻意无日期选择器的原因译出;术语对齐邻近 zh 分析页,zh-Hant 的误转「磚貼」顺带修正为其余文档已用的「磁貼」。
    • 守卫同 PR 扩容,三方向反向验证齐备:注假磁贴 → 红且点名 zh 文件;DOC_PAGES 回退 → 绿(证明覆盖确为新增);本地化章节标题 → 红(Activity model: first-class meetings/events + call logging on every sales object #592 踩过的形状)。过时的 Locale note 注释一并改准。
    • 覆盖不对称如实记录(docs-drift 的 **Name** tile 散文规则只在英文页开火——zh 页正文里的磁贴引用无人检查 #725,finding):TILE_REFERENCE 只匹配英文散文,zh 页正文引用暂不受检 —— dev 人工逐条核过当前正文引用全部真实,且没有越权改判据(那是另一次决定),注释里写明防止误读。边界纪律正确。

    Generated by Claude Code

  6. added and removed on Sep 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdocumentationImprovements or additions to documentationpm:dispatchedDispatched to a dev agent by /pm-dispatchpriority:p2Medium: important, M3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions