Repository navigation
fix(i18n): three screen-flow dialogs title the step, not the flow, in zh-CN, es-ES and ja-JP - #2100
Merged
Conversation
… zh-CN, es-ES and ja-JP The zh-CN, es-ES and ja-JP packs translated `screens.screen_1.title` of `lead_conversion`, `quote_generation` and `campaign_enrollment` as the flow's own label, so the dialog showed the flow name twice: once as the eyebrow (the flow label) and again as the title. The executor heads a screen with no authored `title` by its node `label` (`config.title ?? node.label`), and those three node labels are "Conversion Details", "Quote Details" and "Enrollment Criteria", which English already shows. Each title now translates its node label, worded with the term the same pack already carries: zh-CN 转化详情 / 报价单详情 / 加入条件, es-ES Detalles de la Conversión / Detalles de la Cotización / Criterios de Inscripción, ja-JP 変換詳細 / 見積詳細 / 登録条件. The pack comment that stated the wrong fallback (a screen with no title "shows its flow's label") is corrected in all three packs, since it is the rationale the duplicated titles followed. Co-authored-by: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P8mZuzuyZAHSrgQKmv6ASv
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
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 #2096
Clause-②: no
What changes
In zh-CN, es-ES and ja-JP, three screen-flow dialogs showed the flow's own name twice: once on the small line above the title (the flow label) and again as the title. Each title now names the step, as English already did. The fix is nine strings in three language packs, plus a corrected comment in the same three files.
Cause (measured on
2f3d898d,@objectstack/*18.0.0-next.0)heading() ?? node.label(@objectstack/service-automationdist/index.jsL11247).heading()is the translation atflows.FLOW.screens.NODE.title, or the authoredconfig.title. None of the threescreen_1nodes authorsconfig.title, so English shows the node label: "Conversion Details", "Quote Details", "Enrollment Criteria". The CLI extractor uses the same fallback for the key's seed (@objectstack/clidist/utils/i18n-extract.jsL1371: "A screen'stitlefalls back to the nodelabel").screens.screen_1.titleequal toflows.FLOW.labelon those three flows. A comment in each pack gave the wrong fallback as the reason: "A screen with no authoredtitleshows its flow's label in every locale, so eachscreen_1.titlerepeats the flow label."escalate_case,close_case,claim_case,schedule_followup) use a node label equal to the flow label, in English too. Their translated titles match English and stay unchanged (see Acceptance notes).Before → after (console DOM probe: the eyebrow / the title)
Measured with Playwright against
objectstack dev -p 4104on this worktree, admin session, browser locale set per row. Each row opens the record's action and reads[role=dialog] p.text-xs(eyebrow) and[role=dialog] h2(title). Before =2f3d898d, after =470b5406.Wording: each term comes from the same pack
X Detailspage labels)app.tsconversionsection labelcrm_quoteobject labelenroll_leadsaction label and the screen's field labelsFile surface
screens.screen_1.titleoflead_conversion,quote_generationandcampaign_enrollmentinsrc/sales/translations/zh-CN/app.ts. The same three keys ines-ES/app.tsandja-JP/app.tsare included because H3 measured them equal to the flow label. Also.changeset/2096-screen-titles.md.flows:is corrected in each pack. It now says that a screen with no authoredtitleis headed by its nodelabel. Two reasons: (1) the old comment is the rationale the duplicated titles followed, and after this change it no longer describes the pack; (2) left as it was, it tells the next translator to undo this fix. The executor line and the CLI extractor line quoted under Cause are the evidence.Verification (at
470b5406)pnpm validate: exit 0,✓ Validation passedpnpm typecheck: exit 0 (tsc --noEmit)pnpm lint: exit 0,18 suggestion(s)pnpm lint:i18n-gate: exit 0,✓ i18n lint gate: 0 i18n/missing-* issues (18 total lint issue(s) reported, unaffected by this gate)pnpm hygiene: exit 0,✓ source hygiene cleanpnpm hygiene:tokens: exit 0,✓ source token ratchet clean(translations are outside the ratchet by ruling)pnpm build: exit 0,✓ Build completepnpm test: exit 0,Test Files 179 passed (179),Tests 3659 passed | 1 skipped (3660)Acceptance notes
Schedule Follow-up / Schedule Follow-upin en-US and安排跟进 / 安排跟进in zh-CN. Reading the source, Escalate Case, Close Case and Claim Case have the same shape: node label equals flow label. The console renders the eyebrow unconditionally (objectuipackages/app-shell/src/views/FlowRunner.tsxL619 on2312bd9). This is not zh-CN: three screen-flow dialogs repeat the flow's own label as the screen title (Convert Lead shows 线索转化流程 twice): the zh-CN pack translatesscreens.screen_1.titleas the flow label #2096's defect, because there the translation differed from English. It is passed to the seat as a finding and is not fixed here.test/automation-docs-coverage.test.tspins the zh flow label线索转化流程. The flow labels do not change, and the suite is green.Generated by Claude Code