Skip to content

幽灵字段 Customer Since 在 revenue/index 与 sales/accounts 两页仍被写成已实现(#805 只修了 contracts.mdx) #824

Description

@yinlianghui

来源:#805(PR #823)实施过程中的顺带发现。#805 的文件面只有 content/docs/revenue/contracts.mdx 三语,grep -rn "Customer Since" content/ 显示同一条幽灵声明还落在另外两页上,故单独立单。基线 origin/main = 6f6ed9a。

事实

customer_since 不存在:grep -rn "customer_since" src/ 零命中,crm_account 也没有任何其它名字的字段记录「何时成为客户」(src/objects/account.object.ts)。激活链路 src/objects/contract.hook.ts:104-119 只做两件事——给合同盖 signed_date、把 account.type 改成 customer,不写任何日期到客户上。

PR #823 已按此改掉 content/docs/revenue/contracts.mdx 三语。同一条声明还在两处:

  1. content/docs/revenue/index.mdx:43(+ zh-Hans / zh-Hant 同行)

    - **Auto-stamp Customer Since** date on the first activation.

  2. content/docs/sales/accounts.mdx:69(+ zh-Hans / zh-Hant 同行,zh 写作「成为客户日期在首次合同激活时被记录」)

    - The **Customer Since** date is captured on the first contract activation.

sales/accounts.mdx 那条尤其误导:它在「Automatic updates」小节里,和同小节里真实存在的 last_activity_date、opportunity 金额汇总、open case count 并排,读者没有理由怀疑其中一条是空的。

同页另一处(顺带,同一个 bullet 列表)

content/docs/revenue/index.mdx:45(+ zh 两版):

- **Daily renewal reminder** — ... the owner and the account owner get a reminder email.

contract-renewal.flow.ts 的 notify_owner 只有一个收件人 {currentContract.owner_id},即合同所有者。客户负责人收不到任何东西。与 #805 删掉的第 4 条同型。

影响

与 #752 / #757 / #758 / #765 / #792 / #796 / #805 同一类。读者按 revenue/index 与 sales/accounts 的说法去做同期群分析(「这批客户是什么时候成为客户的」),会发现字段根本不存在;#805 修完 contracts 页后,这两页反而成了这条幽灵字段仅存的出处。

修法建议

以 src/objects/contract.hook.ts + src/objects/account.object.ts 为事实来源改这两页(各三语,共 6 个文件),与 PR #823 的措辞对齐:客户上不记录成为客户的日期,要做同期群只能读合同的签署日期或开始日期。revenue/index.mdx:45 的收件人按 contract-renewal.flow.ts 改成只有合同所有者。不为散文加钉子测试。

⛔ 不要改 src/** —— 要不要在 crm_account 上加 customer_since 是产品决定,不该由文档倒推;若确定要做,另开实现单。

Refs #805 #796 #792

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-824-customer-since-ghosts,worktree hotcrm-issue-824。文件面:content/docs/revenue/index.mdx ×3、content/docs/sales/accounts.mdx ×3、changeset。裁定:Customer Since 幽灵两处按 #823 已落的口径改写(激活真正做的是 signed_date + type→Customer;字段不存在,是否要建是产品决策不预决);revenue/index:45 的续约提醒收件人按 contract-renewal.flow.ts 写实(只有合同所有者一人)。⚠️ accounts.mdx ×3 今天被 #768 改过、revenue/index 被 #750 一族动过,基线取最新 main 逐条重核。⛔ 不动 src/**。


    Generated by Claude Code

  4. yinlianghui commented on Aug 5, 2026

    @yinlianghui
    CollaboratorAuthor

    ✅ 验收通过 — PR #841 已转 ready 并挂 auto-merge(CI 8/8 绿;worktree 已按维护者指示清理)。

    判定要点:

    #824 随本 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