Skip to content

zh-Hans 文档里 crm_campaign 有两个译名:administration 两页写「市场活动」,语言包与其余 14 个文件写「营销活动」 #830

Description

@yinlianghui

发现自 #810 的实施过程(PR #828)。#810 正文把这一条记作「一并记录的次生不一致」,但 #810 的裁定是 ⛔ 不动其它对象译名,所以 PR #828 没有碰它;#810 关掉后这条就没有承接单了,故单独立单。

现象

crm_campaign 在 zh-Hans 侧有两个译名,按文件数是 14 : 2:

写法 出现处
营销活动(语言包的写法,src/translations/zh-CN.ts:743) marketing/campaigns、marketing/index、marketing/campaign-members、analytics/cubes、getting-started/introduction、sales/{leads,accounts,opportunities}、reference/{glossary,security-and-compliance}、guides/{email-and-calendar,search-and-navigation}、analytics/reports、index 等 14 个 zh-Hans 文件
市场活动 content/docs/administration/sharing-and-security.zh-Hans.mdx(4 处:OWD 表一行 + 「由父级控制」那行的父对象名 + 共享规则表 2 行)、content/docs/administration/profiles.zh-Hans.mdx(3 处)、content/docs/index.zh-Hans.mdx:36 的卡片标题「开展市场活动」

另外 test/sharing-coverage.test.ts 的 ROW_LABEL['crm_campaign']['zh-Hans'] 也是 '市场活动' —— 那是 authored ledger,跟 sharing 页绑定,改页必须同批改它,否则守卫立刻红(这一条已在 PR #828 的反向验证里实测过同类方向)。

PR #828 之后这两页读作:

| 市场活动 | 公共只读 | 营销创建,销售查看 |
| 营销活动成员 | 由父级控制(市场活动) | 成员关系是市场活动的一个属性 …… |

—— 子对象带「营销」、父对象写「市场」。#828 选「营销活动成员」而非「市场活动成员」的依据是语言包 + 文档多数写法,取词后剩下的就是这条本来就存在的分歧。

zh-Hant 侧没有这个问题

zh-Hant 全仓 行銷活動 一致,市場活動 零命中。所以这是 zh-Hans 单侧的事。

修法(一次改完,别拆)

  1. content/docs/administration/sharing-and-security.zh-Hans.mdx、content/docs/administration/profiles.zh-Hans.mdx:市场活动 → 营销活动;
  2. 同批改 test/sharing-coverage.test.ts 的 ROW_LABEL['crm_campaign']['zh-Hans'],否则 OWD 行守卫红(缺行 + 幽灵行两条);
  3. content/docs/index.zh-Hans.mdx:36 的卡片标题「开展市场活动」需单独判断:它是动宾短语不是对象标签,可能该保留 —— 这一条不要跟着机械替换。

反向验证方向应预先声明:改文档不改 ledger(或反之)→ 预测 sharing-and-security.zh-Hans.mdx 一页红两条规则,zh-Hant 与英文页保持绿。

归属

属于 #802 记的那一类(文档用词与语言包是否一致,无人检查)的又一个具体实例,与 #765 §3 / #793 / #801 同族;区别是前几例都是状态名/字段标签,这一例是对象标签。

Refs #810, #828, #802

Activity

  1. 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
  2. self-assigned this
    on Aug 5, 2026
  3. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    🔒 认领(修复线 PM 派单):session_01VHrPAGEgFDoHjphqYG4BMa,分支 claude/issue-830-campaign-zh-dual-name,worktree hotcrm-issue-830。文件面:administration/sharing-and-security.zh-Hans.mdx(4 处)、administration/profiles.zh-Hans.mdx(3 处)、test/sharing-coverage.test.ts 的 ROW_LABEL['crm_campaign']['zh-Hans'](必须同批改,否则守卫红——issue 已预告)、sales/index.zh-Hans.mdx:36(「开展市场活动」需单独判别是否动宾短语,按 #842 的动词判据处理并披露)、changeset。裁定:crm_campaign 的 zh-Hans 文档译名统一到包与其余 14 文件的「营销活动」;反向验证按 issue 预声明的方向跑(ROW_LABEL 不同步 → 守卫红并点名)。⚠️ 两页刚被 #811/#828 改过,基线取最新 main。⛔ zh-Hant 侧无此问题不动;不动语言包。


    Generated by Claude Code

  4. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    [PM 验收] PR #849 ACCEPT — 已转 ready 并挂 auto-merge(session_01VHrPAGEgFDoHjphqYG4BMa)

    复核结论:

    • 前提复核成立且更精确:issue 记 sharing 页「4 处」按行数对、按出现次数是 5——:40 一行两处同指父对象 crm_campaign,一并改是正确的收口;zh-Hant 实测「市場活動」零命中,确认简体单侧问题,繁体未动。
    • ROW_LABEL 同批同步 + 反向验证方向吻合:先声明「只改文档、ledger 留旧 → zh-Hans 页红两条(缺行+幽灵行),其余四项绿」,实测 2 failed | 34 passed,失败点名精确;同步后 36/36。这正是派单时预告的守卫方向。
    • 「开展市场活动」判定为对象名引用,论证充分:英文原文 Run marketing campaigns、zh-Hant 孪生卡片同槽位写「行銷活動」、href 指向 marketing 功能面——三条证据均不依赖「本网格一律用包 label」这个(被 [观察] crm_case 在中文文档里有三种叫法:语言包「服务案例」、25 个页面「工单」、14 个页面「案例」(两页同页混用) #837 记为分歧的)前提,与 docs(sales): name the seven opportunity stages the way the locale pack ships them (#829) #842 动词豁免的边界划得干净:豁免保护动作本身,不保护动词宾语位上的对象 label。采纳。
    • 两处派单口径出入均按实际修正(sharing 页处数、index.zh-Hans.mdx 实际路径),记为派单行文精度问题,非前提失效。
    • CI 实测 9/9 绿(head d6765ec);文件面 5 个,语言包/en/zh-Hant/src/releases 未动,与申报一致。改后「市场活动」在 content/ 零命中。

    越界发现处置:#846 追评(zh-CN.ts:925 help 串孤例 + 四语言包对照补证)符合去重纪律,无需另立单;「工单 vs 服务案例」已在 #837,未重复申报,处理得当。


    Generated by Claude Code

  5. 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