Repository navigation
docs(sales): quotes.zh-Hant 的 expired 状态名跟语言包写作「已過期」(#793) - #803
Merged
Merged
Conversation
…es on the zh-Hant page (#793) `content/docs/sales/quotes.zh-Hant.mdx` called the `expired` quote status 「已到期」 in its status table and again in the daily-sweep bullet, while `crm_quote.status.options.expired` in `src/translations/zh-CN.ts` is 「已过期」 — 「已過期」 in traditional script. 到期 and 過期 are not the same word (a deadline arriving vs having lapsed), so a reader matching the page against the screen looked for a status the product never shows. Both status-name occurrences now follow the locale pack. The page's third mention — the standard-list-view section describing the nightly sweep — already said 已過期, so the page was contradicting itself as well as the product. Verb and field usages stay as they are, on the criterion PR #794 set when it aligned `presented` (it deliberately left 「擷取其呈現時刻的定價」 alone): 「自動到期」 in the frontmatter names the expiry mechanism, 「每日到期掃描」 names the nightly sweep, and 「到期日期」 is the shipped label of the `expiration_date` field (`src/translations/zh-CN.ts`), not a status name. Docs follow the locale pack rather than the reverse, so nothing under `src/` changed. The leads half of the issue is delivered by #792's PR, per the scope split recorded on both issues. Fixes #793 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VHrPAGEgFDoHjphqYG4BMa
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
This was referenced Aug 5, 2026
yinlianghui
marked this pull request as ready for review
August 5, 2026 20:50
This was referenced Aug 5, 2026
Merged
yinlianghui
added a commit
to yinlianghui/hotcrm
that referenced
this pull request
Aug 10, 2026
…d field-group headings with the locale pack (objectstack-ai#801) (objectstack-ai#825) The Chinese sales pages are supposed to spell every label the way `src/translations/zh-CN.ts` ships it — that pack is what the reader sees on screen. Four pages had drifted: - `crm_lead.status` ships 已确认 / 未通过 / 已转化; the leads pages said 已审核 / 不合格 / 已转换, in the status table and in every sentence downstream of it. The convert verb face follows `convert_lead` (转化线索) and `is_converted` (已转化), so 转换 becomes 转化. - `expiration_date` is 到期日期; quotes.zh-Hans called it 过期日期 in four places while already using 到期日期 in three others. - The `expired` status is 已过期; sales/index.zh-Hant said 已到期 — the same word corrected on the quotes page in objectstack-ai#803, on a page that fix did not reach. - `reports_to` is 直属上级; the contacts prose still said 汇报对象 after objectstack-ai#804 corrected the table cell. - Field-group headings on the leads / contacts block tables now use each object's `_sections` labels instead of independently translated ones. Verb and mechanism usages are preserved (报价到期, 每日过期扫描, 即过期的报价, 通过资格审核), and terms belonging to another object keep that object's wording. Docs follow the pack, so nothing under `src/` changed. Fixes objectstack-ai#801 Claude-Session: https://claude.ai/code/session_01VHrPAGEgFDoHjphqYG4BMa Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #793
纯文档改动,只动
content/docs/sales/quotes.zh-Hant.mdx一个文件加 changeset。以src/translations/zh-CN.ts为唯一事实来源(contract-first,文档跟语言包),不动src/。前提复核
按惯例在
origin/main= 131daf9 上重核,issue 的断言全部成立,且范围比 issue 写的略大一处:quotes.zh-Hant.mdx:19状态表把expired写作「已到期」:19(该页最后一次改动是 PR #794,只动了presented)zh-CN.ts:471-472的crm_quote.status.options.expired='已过期':19是对的src/translations/只有 en / zh-CN / es-ES / ja-JP,故 zh-Hant 的对照来源是zh-CN.ts的繁体化写法「已過期」:70「系統會將任何到期日期已過的報價標記為已到期」也是状态名,一并改(#794 对presented的先例:状态表加正文 6 处一起对齐)改了什么(2 处)
:19⚪ **已到期**⚪ **已過期**:70改完这一页自己也不再打架了:
:118(标准列表视图小节)本来就写「每晚的過期清掃⋯⋯自動改成已過期」,用的正是语言包的词。也就是说该页此前对同一个状态有两种叫法,:19/:70一种、:118另一种。刻意没改的(判断标准同 #794)
#794 对齐
presented时明确保留了:8「擷取其呈現時刻的定價」这类动词用法。同一条标准,本页以下 8 处不是状态名,全部保留::3frontmatter 的「自動到期」—— 描述过期机制的动词用法(issue 正文亦如此判定)。:70/:132的「每日到期掃描」—— 定时任务的名字,不是状态。:31/:65/:112/:114/:119/:127的「到期日期」/「到期日」—— 这是expiration_date字段的出厂标签(zh-CN.ts:477='到期日期'),跟语言包恰恰意味着不能改成「过期日期」。所以这里不存在 issue 担心的「改一半」:动词与机制名一处未动,状态名两处全动。
越界发现(已单独立单,本 PR 不修)
#801 —— 按「这个状态名/字段名还在哪些页被消费」而不是按本 PR 改的那一页做了全仓扫描,扫出两处在本 PR 文件面之外:
sales/index.zh-Hant.mdx:44:「超過有效期的報價每晚會被自動標記為已到期」—— 和本 PR 修的是同一个词、同一个错、几乎同一个句式,只是在另一页上。zh-Hans 的同一行是对的。这一处值得复核者留意:quotes.zh-Hant.mdx 把 expired 译成「已到期」,语言包 zh-CN.ts 是「已过期」 #793 的文件面按「哪一页有这个错」划定,而状态名是跨页消费的,所以窄面派单必然扫不到它;docs(sales): 按对象/流程/语言包重写联系人退订、线索评分与 zh 版 presented 状态名 (#765) #794 修presented时做过全仓扫描(现在全仓 grep已呈现|已呈現零命中,确实是干净的),本轮立单只点了一页。本 PR 严格守 PM 划定的文件面,没有顺手改它。quotes.zh-Hans.mdx:把expiration_date叫作「过期日期」共 4 处(:31/:65/:70/:127),语言包是「到期日期」;而同页:112/:114/:119又写作「到期日期」,自己就有两种叫法。与本单正好互为镜像:zh-Hant 是状态名错、字段标签全对,zh-Hans 是状态名对、字段标签错——所以两页谁也不能当对方的校对基准(quotes.zh-Hant.mdx 把 expired 译成「已到期」,语言包 zh-CN.ts 是「已过期」 #793 立单时正是按状态名判定「zh-Hans 是对的」而漏掉了它的字段标签)。#802(
finding,未排期)—— 「文档里的状态名/字段标签是否等于语言包」这条事实目前零覆盖:docs-drift.test.ts只钉 flow 阈值与磁贴标题,os validate/pnpm lint不读content/docs/。一周内同类缺陷已出现四次(#765 §3 / #793 / #801 甲 / #801 乙),且是逐层被别的工作带出来的。单里记了动手前必须先答的两个问题(zh-Hant 无语言包怎么对照;动词与机制名如何豁免才不误报)。验证
全量四件套,均在共享锁下跑:
另跑两道闸:
控制字符自扫(超出
pnpm hygiene的扫描面,覆盖本 PR 改动的 mdx 与 changeset):grep -naP '[\x00-\x08\x0b\x0c\x0e-\x1f]'零命中。测试面说明(据实报告):本 PR 未新增钉子测试。这类事实当前没有可挂靠的闸(见 #802),而现写一道通用闸需要跨全部 zh 文档页扫描——既会撞上 #792 正在重写的 leads 两页,也会因 #801 的两处立即变红,把一处窄的译名订正变成全仓对齐。#765 亦明确要求不为散文加钉子测试。故按 PM 划定的文件面(仅 quotes.zh-Hant.mdx + changeset)交付,闸的设计问题留在 #802。
changeset:
.changeset/quotes-zh-hant-expired-status-label.md(hotcrm, patch)。按 #797 的教训,站内路径一律用反引号写,未使用 markdown 链接语法——link-check 会扫.changeset/下的.md。本 PR 未新增任何链接。