Repository navigation
「营业时间」在 sla 页之外还有三处:administration/setup 整整一节教人配置一个不存在的 Setup → Business Hours 屏,reference/faq 把它写成 SLA 计时的前置条件,glossary 收了词条 #928
Copy link
Copy link
Closed
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationpm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatch
Description
Activity
- addeddocumentationImprovements or additions to documentationImprovements or additions to documentationpm:queueReady for the PM dispatch loopReady for the PM dispatch looppm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatchand removedpm:queueReady for the PM dispatch loopReady for the PM dispatch loop
on Aug 6, 2026 🔒 认领(/pm-dispatch R29)— session
session_01VHrPAGEgFDoHjphqYG4BMa,分支claude/issue-928-business-hours-spillover。文件面(×3 语言):
administration/setup的营业时间整节(基线 :20-28,带勾选框)、reference/faq的 :92-95(SLA 前置条件族,:91 开放状态属实不动)、reference/glossary的 :34 词条——fresh main 重定位。裁定:
- 基线 rc.3;stale-premise 逐条复核(全仓营业时间四关键词零命中、唯一计时是 case.hook.ts setHours(+4) 纯挂钟——PR docs(service): write the sla page's views, report dimensions and business-hours claims to source (#917) #924 的证据链可直接复用,仍须在 fresh main 重验)。
- 优先单:setup 该节教人配置不存在的 Business Hours 屏并反链 sla 页,与 docs(service): write the sla page's views, report dimensions and business-hours claims to source (#917) #924 改后的 sla 页直接打架——同页矛盾消除是第一目标。
- 口径沿 docs(service): write the sla page's views, report dimensions and business-hours claims to source (#917) #924:点名说清不存在/不做什么 + 真实归属(SLA 时钟是纯日历小时、仅 critical 自动打戳),不静默删名;faq :93 按优先级定义 SLA、:95 默认 SLA 两条一并写实。
- glossary 词条改写为「本应用当前无营业时间概念」类实况表述或删条,dev 依语境定并在 PR 说明;「工作流规则」清扫后仍有 bare
workflows残留族:faq / performance-and-limits 的「重新评估 5 次后停止」是 PR #854 已判虚构那条说法的未清扫副本,quotes:141 指向不存在的配置面 #899 已改的 faq :75-83 不得回退。 - SLA policy matrix: per-priority × tier clocks, first-response stamping, escalation that reassigns #595 不预判;src/ 零改动;zh 内链不带锚。
Generated by Claude Code
✅ 验收通过 —— PR #933 已转 ready 并挂 auto-merge(CI 8/8 全绿实核)。
验收要点:
- 前提未复用旧证据而是 fresh main 全量重验:五个营业时间关键词 src/ 零命中(3 处 business hour 命中均为产品描述种子串),且额外验到平台侧——@objectstack/console dist 全文无 Business Hours 屏——比派单证据链更进一步。
- setup §2 改写克制:保留节编号(§3-§14 不移位)与名字,明说没有该屏、给真实归属;原例「8 business hours」归位为 High 的服务承诺而非在跑的计时器。
- faq 面控精确::91 属实保留,:92-95 三条虚构换成真实排查清单(开放状态/有无截止时间/是否已过且已跑扫描);「工作流规则」清扫后仍有 bare
workflows残留族:faq / performance-and-limits 的「重新评估 5 次后停止」是 PR #854 已判虚构那条说法的未清扫副本,quotes:141 指向不存在的配置面 #899 的 :75-83 零回退(diff 首 hunk :86 起可证)。 - glossary 取改写不删条,沿 Workflow rule 词条同形先例(行业含义 + 明说本应用没有 + 指真实截止时间)——查词读者拿得到答案。
- zh 小节名与被和解的 sla 页对齐;三语同步;守卫盲区如实报 predicted GREEN 且注明「测试只证明没打破别的,为真的依据是源码证据」。
越界发现处置:
- 「首次响应 SLA」被三处文档写成可度量的目标:setup 清单 §11 的 SLA 矩阵整列、analytics/reports 的 SLA Performance 行、analytics/cubes 的 Service Cube 措施 —— 全仓没有任何首次响应目标、达标度量或超时信号 #936(首次响应 SLA 三处写成可度量目标:setup §11 矩阵列、analytics/reports:40、analytics/cubes:84/:86——first_response_date 有写入方但全仓无目标比较/度量/告警)已复核成立,标 pm:queue,R30 候选;triage 时按 dev 提示再核 analytics 同族单去重。
- cases :166/:167 边界观察已面扩给在飞的 bare
workflows残留族在 #899 枚举之外还有 4 处:whats-new 把真实的contract_renewal流程叫成 workflow,state-machines:133 在 PR #894 扫过该文件后仍留着 #912 族 dev(同页同口径一次收口),归属判定正确。
Generated by Claude Code
- added a commit that references this issue
on Aug 10, 2026
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationpm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatch
发现自 #917 / PR #924 的实施过程(写实 sla 页
:27/:142两处营业时间承诺时,grep -rniE "business.hours" content/docs/找到同族其余落点)。基线
origin/main=6014b2cf(平台 17.0.0-rc.3)。事实:全仓没有任何营业时间的实现
grep -rniE "business.?hour" src/只有三处命中,全是产品目录与报价行的描述文案(src/data/catalog.seed.ts:138、src/data/sales.seed.ts:585/:629)。workingHours/businessCalendar/business_hours/slaCalendar在src/里零命中——没有工作日日历,没有节假日清单,没有任何可供截止时间对照的配置。src/objects/case.hook.ts:60-63的due.setHours(due.getHours() + 4)——纯挂钟小时,夜间/周末/节假日照算。critical生效,写死在同一处钩子里(service/sla-and-escalation的 SLA 跟踪一节仍有四处行为性失实:只有 Critical 拿得到 sla_due_date、违约标记并非只读、"实时倒计时"零实现、High/Medium/Low 的"违约长什么样"描述的其实是优先级行色 #903 / PR docs(service): SLA 跟踪一节按实测行为改写(#903) #918 已把 sla 页这一点写实)。PR #924 已把
service/sla-and-escalation三语页的:27(引用块)与:142(管理员提示)写实。同族说法在另外三个文件里仍是原样,不在 #917 的切割里,故单独立单。三处
1.
content/docs/administration/setup.mdx:20-:28—— 整整一节这是本族里最贵的一处:不是一句话,而是一份带勾选框的配置清单,指名一个
Setup → Business Hours屏幕,让管理员逐项去填工作日、工作时段和当年节假日。三样东西都不存在,那个屏幕也不存在。:28还把它作为 SLA 计算的驱动来源反向链回 sla 页——而 sla 页在 PR #924 之后已经明写没有这个设置,两页现在直接打架。举例里的 "resolve within 8 business hours" 对应的是 High 的 8 小时,那是团队的服务承诺,背后连sla_due_date都不会被写(#903 已写实)。2.
content/docs/reference/faq.mdx:92—— 写成 SLA 计时的前置条件:92与:93都不成立,:95也不成立:不存在"配置营业时间"这一步,不存在"给某个优先级定义 SLA"这个配置面,也不存在"默认 SLA"——钩子只认critical,其余优先级什么都不写。而:91(开放状态)是对的,跟case_sla_monitor的status: { $nin: ['resolved', 'closed'] }一致,不要顺手改掉。3.
content/docs/reference/glossary.mdx:34—— 词条词典条目定义了一个本应用没有的概念,且断言它被用于 SLA 计算。
三语同址(
.zh-Hans/.zh-Hant均已翻译,行号一致)。为什么要紧
setup.mdx是管理员上手时逐项照做的清单,读者会花时间去 Setup 里找一个不存在的屏幕,找不到之后合理地怀疑是自己权限不够或版本不对。faq.mdx:92更糟一点:它把"营业时间已配置"列成 SLA 时钟运行的前置条件,于是一个发现 High 工单没有计时的管理员,会去排查一个不存在的配置项,而真正的原因是钩子只给critical打戳。边界
service/sla-and-escalation剩余六处失实(#903 四族之外):营业时间可配置、SLA 表现报表的四个维度、Breached SLA 视图、Service Board 看板、My Open Cases 排序、Waiting on Customer 暂停 SLA 时钟 #917 / PR docs(service): write the sla page's views, report dimensions and business-hours claims to source (#917) #924 不重叠:那单只动service/sla-and-escalation三语页的:27/:142,本单是administration/setup、reference/faq、reference/glossary三个文件。service/sla-and-escalation的 SLA 跟踪一节仍有四处行为性失实:只有 Critical 拿得到 sla_due_date、违约标记并非只读、"实时倒计时"零实现、High/Medium/Low 的"违约长什么样"描述的其实是优先级行色 #903 /service/sla-and-escalation三语还剩两处行为性失实:升级触发条件多出一个不存在的 High+Customer 分支,Critical 违约行承诺「红色横幅 + 通知支持经理」 #886 / service 三页仍写「建议一个解决方案」会检索知识库并起草回复 / Copilot 用知识库对相似历史工单做模式匹配——两个技能都做不到 #890 不重叠。src/objects/case.hook.ts的挂钟 4 小时),不静默删名。setup.mdx这一节是带勾选框的操作清单,写实时需要决定是改写成"本应用不提供"还是整节移除并调整后续小节编号(### 3. Email setup起)——建议前者,与本仓既有口径一致。Refs #917 #903 #595