Repository navigation
Home page still ships a card titled "Ask the Sales Copilot" — a retired persona in live UI metadata, outside every docs guard's scan surface #1002
Copy link
Copy link
Closed
Labels
metadataDeclarative metadata — schema, security posture, UI surfacesDeclarative metadata — schema, security posture, UI surfacespm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatch
Description
Activity
- addedbugSomething isn't workingSomething isn't workingmetadataDeclarative metadata — schema, security posture, UI surfacesDeclarative metadata — schema, security posture, UI surfacespm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatchand removedbugSomething isn't workingSomething isn't working
on Aug 6, 2026 🔒 认领(/pm-dispatch R38 尾单)— session
session_01VHrPAGEgFDoHjphqYG4BMa,分支claude/issue-1002-home-card-depersonalization。文件面:
src/pages/home.page.ts:236卡片(title + description)+ 若 title/description 有语言包对应键则语言包同步(沿 #859 先例)——元数据单。裁定:
- 方案 A 既有拍板的直接适用(Docs drift (round 2 leftovers): ~39 product pages still name "Sales/Service Copilot" as a persona; config comment and RELEASE_STRATEGY.md still stale #612 维护者 2026-08-04):title 'Ask the Sales Copilot' → 'Ask the AI Assistant'(zh 若有键用「AI 助手」),不暗示应用内人格;description 的「floating Copilot (bottom-right)」按文档现行口径改(助手面板从页面右缘打开——docs: align README/copilot pages with the shipped skills-only surface (#589) #611/docs: 全站去人格化 Copilot 称呼,并把版本号钉到 manifest (#612) #1001 落地口径),裸 Copilot 一并中性化(拍板精神覆盖,无需新输入)。
- 守卫扫描面是否扩到 src/ 用户可见字符串——不在本单做,立 finding 记录(能力扩张需单独裁定)。
- 动 src/**:六道门全跑 + dist 产物核对(title 变更进产物);与 [17.0-rc2验收] sales_home_page / app_launcher_page / utility_bar_page 多个组件渲染为「Component Placeholder」,首页欢迎语用户名插值为空 #734(同页 Component Placeholder)互不触碰;SLA policy matrix: per-priority × tier clocks, first-response stamping, escalation that reassigns #595 不预判;changeset patch。
Generated by Claude Code
✅ 验收通过(修复线尾单)—— PR #1005 已转 ready 并挂 auto-merge(本地六道门全绿;Actions 全仓积压 19 个 queued 含 main 自身 run,零失败,沿 #995/#1000/#1001 先例由 auto-merge 把关)。
验收要点:
- 三处文案按方案 A 落地(title/label/description,裸 Copilot 一并中性化),卡片功能语义逐项保留;description 对齐 docs: align README/copilot pages with the shipped skills-only surface (#589) #611/docs: 全站去人格化 Copilot 称呼,并把版本号钉到 manifest (#612) #1001 的「右缘面板」口径。
- 语言包不动的理由是契约级的:pages 翻译面 .strict() 四键且 title/subtitle 归 page:header——卡片文案无键可写,strict 会拒;不是漏做,是做不了——并由此立出 页面组件文案没有翻译位:12 处用户可见字符串(首页占 10)在 zh/ja/es 下只能是英文,而 dashboards.widgets 有同形的翻译面 #1004。
- dist 产物级归零验证:新串各 1 次、旧串全 0、产物内任何拼法 Copilot 为 0——用户可见面的最后一处人格残留确认清除。
- 反向验证 2 红 + 1 防空转绿(预期即绿),既有五守卫 120 断言零回退。
越界发现处置:
- 守卫能力:退役人格规则只扫 content/docs,src/ 的用户可见字符串(title/label/description/help)无人检查 #1003(守卫扫描面不含 src/ 用户可见字符串 + 三个待裁定点)→ finding 已标,留池;
- 页面组件文案没有翻译位:12 处用户可见字符串(首页占 10)在 zh/ja/es 下只能是英文,而 dashboards.widgets 有同形的翻译面 #1004(页面组件文案无翻译位——spec 面缺口,zh 用户今天看到英文卡片;dashboards.widgets 有面而 pages 没有的契约内不对称是核心证据)→ 按上游协议处理:PM 将镜像至 objectstack 并标本单 pm:blocked + upstream:objectstack。
本单落地即 pm:queue 清零——修复线 backlog 收敛完成。
Generated by Claude Code
- added a commit that references this issue
on Aug 10, 2026 - added a commit that references this issue
on Oct 8, 2026
Metadata
Metadata
Assignees
Labels
metadataDeclarative metadata — schema, security posture, UI surfacesDeclarative metadata — schema, security posture, UI surfacespm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatch
发现于 #612 / PR #1001 的实施过程中(全站散文去人格化)。超出 #612 的范围:
该单的裁定明确是
content/docs散文 +src/零改动,故单独记录,未在 PR #1001中修改。
现象
src/pages/home.page.ts的ai_briefing卡片仍以退役人格命名,是用户今天就能看到的界面文案,不是文档:
sales_copilot这个 agent 已由 #512 退役,ADR-0063 §2 把表面收敛为 skills-only;2026-08-04 的架构定调进一步明确:AI 能力由 objectstack-ai/cloud 侧的 agent 承载,
应用只定义 skills。因此 "Ask the Sales Copilot" 指向的是一个本应用不包含的实体。
同一段文案里可能还有第二处漂移:description 写「the floating Copilot
(bottom-right)」,而
content/docs/ai-copilot/index.mdx现行口径是助手面板「the chat panel the platform opens from the right edge of every page」。两者
描述的是不是同一个入口,需要对着运行时确认,不宜按字面猜。
为什么没有被任何门发现
这是本条的要点,也是它值得单独记一条的原因:
os validate/pnpm lint走的是被授权的元数据结构,卡片的title与description对它们只是自由文本;test/docs-drift.test.ts的「product docs do not name a retired copilot persona」)只扫
content/docs/**—— 那是维护者给 Docs drift (round 2 leftovers): ~39 product pages still name "Sales/Service Copilot" as a persona; config comment and RELEASE_STRATEGY.md still stale #612 划的范围,守卫忠实地照做了;
test/docs-drift.test.ts既有的「documented agent names resolve to a platformagent」规则扫的是代码围栏与脚本里的
agent:/defaultAgent:键值,这里没有这样的键,只有一句人话。
所以退役人格在
src/的 UI 文案里没有任何守卫覆盖。全仓扫描确认这是src/、docs/、README.md、AGENTS.md、CONTRIBUTING.md、CHANGELOG.md里仅存的一处:
(
label: 'Today with Copilot'与 description 里的「the floating Copilot」用的是裸 "Copilot",与文档区名 AI Copilot 同形。是否一并中性化,属措辞决策,一并列在
下面由维护者定。)
建议
title为不指向应用自有人格的说法(如 "Ask the AI assistant"),description与
label的裸 "Copilot" 是否同步中性化请一并拍板 —— PR docs: 全站去人格化 Copilot 称呼,并把版本号钉到 manifest (#612) #1001 在文档侧刻意保留了 AI Copilot 作为文档区名(docs: align README/copilot pages with the shipped skills-only surface (#589) #611 的既定口径),只去掉了两个人格称呼,
界面文案是否沿用同一条界线需要确认;
入口,不一致则以运行时为准修文档或修文案;
content/docs/**扩到src/的用户可见字符串(
title/label/description/help)—— 声明即强制,否则同一个退役人格会在没有守卫的那一侧继续复活。这一步会碰公共措辞面,建议
与第 1 点一起定调。
关联
sales_home_page等多个组件渲染为「Component Placeholder」)。两者互相独立:[17.0-rc2验收] sales_home_page / app_launcher_page / utility_bar_page 多个组件渲染为「Component Placeholder」,首页欢迎语用户名插值为空 #734 是渲染问题,本条是文案内容问题;若该卡片当前根本渲染不出来,
本条的用户可见性会被 [17.0-rc2验收] sales_home_page / app_launcher_page / utility_bar_page 多个组件渲染为「Component Placeholder」,首页欢迎语用户名插值为空 #734 掩盖,但文案本身仍是错的。
Docs drift (round 2 leftovers): ~39 product pages still name "Sales/Service Copilot" as a persona; config comment and RELEASE_STRATEGY.md still stale #612 / PR docs: 全站去人格化 Copilot 称呼,并把版本号钉到 manifest (#612) #1001(散文去人格化 + 守卫)。