Skip to content

[finding] ja-JP sys_webhook now renders its name two ways in one locale — label is the Latin fill, pluralLabel is Japanese #12128

Description

@os-trump

Filed while repairing the five stale-fill leaves of #12065. Observation, not a defect claim — it names a rendering decision nobody has made, and it is visible today only because the repair moved one half of the pair.

What is on the branch

packages/plugins/plugin-webhooks/src/translations/ja-JP.objects.generated.ts:

label: "Webhook"
pluralLabel: "ウェブフック"

Why the plural moved and the label did not

sys_webhook.pluralLabel was one of the five leaves check:i18n-stale-fill froze in its baseline: ja-JP and zh-CN both held a byte-identical "Webhook" after the source pluralised to "Webhooks", which is the gate's evidence that neither locale translated it — both were --fill=default fills of a previous source revision. The repair made the ja-JP arm a real Japanese rendering, using the term this bundle's own Japanese prose already uses: sys_webhook.fields.object_name.help and .triggers.help both write ウェブフック.

label was deliberately left alone. It is byte-equal to the current en value, which is the ordinary --fill=default gap state — check:i18n-stale-fill excludes equal-to-en by construction (its condition 2, "identity EQUAL to en … is check:i18n-coverage's business, not this gate's"), and #12065 scoped exactly five leaves.

The decision this needs

Pick one rendering for the object in ja-JP. Both readings already exist in the same file:

  • label → ウェブフック — matches the bundle's own Japanese help prose and the repaired plural.
  • pluralLabel → back to Webhook — matches description, which writes 送信 HTTP Webhook サブスクリプション, i.e. keeps the Latin term as the proper noun.

Neither is obviously right, which is why this is a card rather than a follow-up commit.

zh-CN is deliberately NOT part of this — recorded so a later sweep does not "fix" it

The same object keeps Webhook for both label and pluralLabel in zh-CN, on purpose:

  • there is no Chinese rendering of the term anywhere in this repo (zero hits for 网络钩子 / Web 钩子 / 网页钩子 across packages, content, docs);
  • the zh-CN bundle's own prose uses Webhook throughout (外发 HTTP Webhook 订阅, 触发该 Webhook 的记录事件, 停用的 Webhook 会被调度器跳过);
  • Chinese marks no plural, so the singular/plural distinction the source drew does not exist to carry over.

Inventing a Chinese calque to satisfy a value comparison would be a worse translation, not a better one.

Severity

No runtime effect. Blast radius is the object's display name in the Setup/admin UI of one published locale.

Refs: #12065 (the repair) · scripts/check-i18n-stale-fill.mjs (the gate and its four conditions)


Generated by Claude Code

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions