Skip to content

同一缺陷类:contacts.mdx 的传真字段/传真退订、leads.mdx 的 0-100 评分与 budget/timeline 字段,在对象声明里都不存在 #765

Description

@yinlianghui

来源:#758(四个 sales 页「标准列表视图」重写)实施过程中的顺带发现。#758 的文件面只覆盖各页的列表视图小节 + 幽灵视图引用,下面这些在别的小节里,故单独立单。基线 origin/main = c55aaf5。

与 #752 / #758 同一类:文档描述了一套产品里不存在的表面,读者照着找不到。区别只在于这次错的是字段、状态名和自动化数字,不是视图名。

1. content/docs/sales/contacts.mdx:48-58(+ zh-Hans / zh-Hant)

「Communication preferences (GDPR / CCPA)」小节写着 三个 退订开关,并逐条描述行为:

  • Fax Opt-out —— crm_contact 上没有任何传真字段(src/objects/contact.object.ts 的字段表里既无 fax 也无 fax_opt_out),同一页 contacts.mdx:18 的「Contact Information | Email, phone, mobile, fax」也一样把 fax 列成了记录字段。实际只有两个开关:do_not_call(contact.object.ts:172)与 email_opt_out(:178)。
  • Do Not Call —— "The system blocks you from logging a Call task to this contact." do_not_call 全仓只被对象声明和表单引用(src/views/contact.view.ts:97),没有任何 hook / flow / validation 读它,所以这条「阻止记录通话任务」是声明未落地的行为。
  • "Reps can request a flag change but cannot remove these themselves — it's an admin-only action." src/profiles/ 里没有针对这两个字段的字段级权限声明,这条限制同样无处兑现。

2. content/docs/sales/leads.mdx:45,56-68(+ zh-Hans / zh-Hant)

  • 记录字段表把 Qualification 小节写成「Status, rating (0-5 stars), score (0-100), budget, timeline」。src/objects/lead.object.ts 上只有 rating: Field.rating(5)(:200,help 文案自己写的是「1-5 星」),没有 score / budget / timeline 任何一个字段。
  • 「Lead scoring — what the score means」整节围绕一个 0-100 的分数展开(公司规模、行业契合、职位资历、互动信号加权)。真实实现是 src/objects/lead.hook.ts:130-149 的 computeRating:按邮箱域名、电话、职位、行业、人数、营收加权后 Math.round 到整星(1-5),只在 beforeInsert 且调用方没给 rating 时写入。
  • 「⭐⭐⭐⭐ or higher → the system flags the lead as hot and sets the next follow-up to today」——实际是 src/flows/lead-assignment.flow.ts:67 的 {TODAY() + 1}(明天),另一支 :91 是 {TODAY() + 3}。
  • 「⭐⭐⭐⭐⭐ → the owner is emailed immediately」——实际通知发生在 rating >= 4(lead-assignment.flow.ts 边 e2),走 inbox + email 两个通道,与是否满五星无关。

3. content/docs/sales/quotes.zh-Hans.mdx:14 / quotes.zh-Hant.mdx:14

状态表把 presented 译成已呈现,而 src/translations/zh-CN.ts 的 crm_quote.status.options.presented 是已提交。中文读者按文档里的词在界面上对不上号。(英文页无此问题,label 就是 Presented。)

修法

按 PR #757 / #758 的做法:以 src/objects/*.object.ts、src/flows/*.flow.ts、src/translations/zh-CN.ts 为唯一事实来源重写这三处,不要为散文加钉子测试。传真那一行是删(对象上没有这个概念),不是补字段——是否需要传真字段是产品决定,不该由一篇文档倒推。「Do Not Call 阻止记录通话任务」与「只有管理员能取消」两条,要么改成描述现状(只是一个标记位),要么单独立单去实现;同一句里两种写法都行,但不能继续按现在这样写。

文件面:content/docs/sales/contacts.mdx、leads.mdx、quotes.zh-Hans.mdx、quotes.zh-Hant.mdx 及各自 zh 兄弟页。⛔ 不要改 src/**(第 2 节里 hot 阈值本身的问题另见单独 issue)。

Refs #752 #757 #758

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-765-sales-docs-ghost-fields,worktree hotcrm-issue-765。文件面:content/docs/sales/contacts.mdx ×3、leads.mdx ×3、quotes.zh-Hans.mdx + quotes.zh-Hant.mdx、changeset。修法照 issue 建议与 #757/#758 先例(以 object/flow/translations 为唯一事实来源,不为散文加钉子)。

    ⚠️ 时效提醒:立单基线是 c55aaf5,今天 leads.mdx ×3 已被 #768、#774(PR)改过——Hot Leads / High Priority 两行是 #774 刚按新阈值(≥4)订正的,保留不动;逐条前提须在最新 main 上重核(行号必变,事实可能部分已修)。⛔ 不动 src/**(hot 阈值已由 #766 处理完毕;传真是删不是补)。


    Generated by Claude Code

  4. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    ✅ 验收通过 — PR #794 已转 ready 并挂 auto-merge(head db12913,CI 全绿)。

    判定要点:

    越界四项已分诊:#792(字段区块表整体错位,#758 类)、#793(zh-Hant「已到期」误译 + 追评的 leads 页开关名对齐提醒,含「两对象中文标签本就不同,各按各的」这个重要陷阱)、#796(欢迎通知描述错误)→ 全部入队;#765 随本 PR 关闭。


    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