来源:#962 + #965 并单实施(PR #975)过程中的卫星命中。那两单的正文都把边界限定在各自那一页,本单是同族的**落地页**——`content/docs/analytics/index.mdx`(三语同址)。它是读者进入分析文档的第一屏,而它的每张表都在转述已经被 PR #954 / #975 改掉的旧口径。 ## 逐条对照 `src/` | 位置 | 页面上的话 | `src/` 的事实 | | --- | --- | --- | | 《What's included》表 | **Cubes** — 4 cubes (sales, pipeline, service, marketing) | 本仓**一个 cube 都没有声明**:语义层是 `src/datasets/` 的九个 dataset,`objectstack.config.ts` 明确不注册 `analyticsCubes`(ADR-0021),`test/analytics-integrity.test.ts` 把这一点写死。四个名字零命中——PR #975 已在 cubes 页收口 | | 同表 | **Dashboards** — 4 ready-made dashboards (CRM, Sales, Service, Executive) | **五个**:`src/dashboards/` 还有 `sales_activity_dashboard`(**Sales Activity**),导航里挂在 Activity 组。`pnpm build` 输出 `5 Dashboards` | | 同表 | **Reports** — 10+ standard reports across leads, deals, cases, **contracts** | 正好 **10 份**(`10 Reports`),且**没有任何合同报表**——没有合同 dataset。真实分布是 deals 4 + cases 3 + leads 1 + accounts 1 + churn 1 | | 《How sharing applies to analytics》 | A rep running *Pipeline by Stage* sees only their pipeline | *Pipeline by Stage* 不是报表:它是三个仪表盘共用的漏斗**磁贴**(`src/dashboards/shared-widgets.ts`)与真实报表 **Opportunities by Stage** 的**图表标题**。PR #975 已在 reports 页按 #924 先例点名 | | 《Where to find things》 | In the Enterprise CRM app, the **Analytics** group contains: Dashboards / Reports / Cubes | `src/apps/crm.app.ts` 里**没有 Analytics 组**。对应的组叫 **Insights**,条目是 **CRM Overview**(仪表盘)、**Forecasts**(对象)与三个具名报表项 **Pipeline Coverage** / **Lead Inflow** / **SLA Performance**。没有「Dashboards」「Reports」「Cubes」任何一个条目 —— 与 #927 / #943 / #960 同型 | | 《AI-powered insights》 | The AI Copilot can read directly from cubes;末尾 See [Sales Skills](/docs/ai-copilot/sales-copilot) | 两个问题:(1) 「Copilot 直接读 cube」是平台侧主张,PR #975 在 cubes 页按 #950 先例写成「本仓无从判定」而非断言为假——本页应取同一口径;(2) **`/docs/ai-copilot/sales-copilot` 这个页面不存在**,`content/docs/ai-copilot/` 只有 `index` / `knowledge-bases` / `live-schema`,属 #866 / #934 的悬空链接族 | 三个示例问题(*"What's driving the gap between commit and forecast?"* 等)本身不必逐字为真,但它们挂在「Copilot 直接读 cube」这句下面,随该句一并处理即可。 ## 为什么要紧 PR #954 / #975 已经把 `analytics/reports` 与 `analytics/cubes` 写到源码,本页却仍在入口处按旧口径给出计数与名字——读者的第一印象仍然是「四个 cube、四个仪表盘、十多份含合同的报表」,点进去才发现对不上。导航那一条更直接:按「Analytics 组」去找,产品里找不到。 ## 修复面(未做) 三语同步,以 `src/datasets/*.ts`、`src/dashboards/*.ts`、`src/reports/index.ts`、`src/apps/crm.app.ts` 为事实来源改写上表六处;平台侧那一条沿 PR #975 已立的中性措辞,不虚构机制也不预判为假;悬空链接改指真实页面或删除。 ## 边界 - 与 #962 / #965(PR #975)行集互斥:那两单是 `analytics/reports` 与 `analytics/cubes`,本单只动 `analytics/index`。 - 「四个内置 cube」词汇散落在本页之外的其余页面(glossary / faq / performance-and-limits / for-developers / introduction / pipeline-management / whats-new / fork-hotcrm / sandbox-and-releases)另单处理。 - 不预判是否应该新增 cube / dashboard / 报表(产品决策)。 Refs #962 #965 #954 #927 #943 #960 #866
Activity
yinlianghui commentedon Aug 6, 2026
🔒 认领(/pm-dispatch R33,与 #977 并单,本单为主单)— session
session_01VHrPAGEgFDoHjphqYG4BMa,分支claude/issue-976-977-cube-vocabulary。文件面(×3 语言):#976 的⚠️ glossary:54 的 cube 概念定义合法不误伤(dev 立单已标注)。
analytics/index六处(PR #975 刚重写 analytics 另两页,fresh main 重定位)+ #977 的 cube 词汇残留 8 页(whats-new:105、for-developers:41、performance-and-limits:75/83、faq:133/138、pipeline-management:93、introduction:21、fork-hotcrm:21、sandbox-and-releases:93)。裁定:
/docs/ai-copilot/sales-copilot修为真实路径或去链。workflows残留族:faq / performance-and-limits 的「重新评估 5 次后停止」是 PR #854 已判虚构那条说法的未清扫副本,quotes:141 指向不存在的配置面 #899/docs: 清扫 bareworkflows残留族 —— 引擎里没有「重新评估 5 次」这个计数器,报价对象上也没有可调的计划 (#899) #916/「营业时间」在 sla 页之外还有三处:administration/setup整整一节教人配置一个不存在的 Setup → Business Hours 屏,reference/faq把它写成 SLA 计时的前置条件,glossary 收了词条 #928/docs: write the three business-hours claims outside the SLA page to source (#928) #933 等已落地行零回退;SLA policy matrix: per-priority × tier clocks, first-response stamping, escalation that reassigns #595 不预判;三语同步;zh 内链带前缀不带锚。Generated by Claude Code
yinlianghui commentedon Aug 6, 2026
✅ 验收通过(并单 #976+#977)—— PR #987 已转 ready 并挂 auto-merge(CI 9/9 全绿实核,29 文件)。
验收要点:
analytics/index落地页六处失实:4 cubes / 4 dashboards / 「10+ 报表含合同」/ 幻影报表名 / 不存在的 Analytics 导航组 / 悬空的 sales-copilot 链接 #976 六处:退役名斜体保留、五仪表盘/十报表逐名、幻影 Pipeline by Stage 沿 docs(analytics): 把 reports 页剩余三节与 cubes 整页写到 src/ (#962, #965) #975 双真身、Insights 组沿 docs(getting-started): write the quick tour's navigation table to the real app (#960) #968 口径、Copilot 主张按应用侧/平台侧分界;「四个内置 cube」与src/cubes/目录的词汇残留散在 8 个页面上:cubes 页已收口,其余各页仍按旧口径写 #977 八处逐页沿各页既有先例原地处理,glossary 正向 pin 防误伤。越界发现处置(两单已复核,标 pm:queue,R34 候选):
getting-started/for-developers的 src/ 目录树仍画着 #512 删掉的agents/,后缀表也仍列*.agent.ts;docs-drift 的目录守卫看不到 content/docs #984(for-developers 目录树 agents/ 残留 + 守卫 TREE_DOCS 盲区,修复面含让守卫看见这一页);sales/pipeline-management的「预测汇总」另两条:仪表盘真名是 Sales Performance,Pipeline Coverage 报表是「预测类别 × 结束季度」而非「季度 × 阶段」 #985(pipeline-management 两条:Sales Dashboard 真名、Pipeline Coverage 维度写反,与 docs(analytics): 把 reports 页剩余三节与 cubes 整页写到 src/ (#962, #965) #975 已写实页直接矛盾)。Generated by Claude Code
docs(analytics): 把 analytics 落地页写实,并清掉散在 8 页上的 cube 词汇残留 (objectstack…