维护者速读
Studio 的属性面板里,重复项(repeater)表格的列头现在开始有了正式英文名——PR #17500 已经给 13 个载体、83 个属性加上了。但要让中文、日文、西班牙文用户也看到母语列头,需要有人写这些译文:合计 604 条目录条目(en / zh-CN / ja-JP / es-ES 四种语言),其中 348 条属于今天已经加了英文名的 87 个属性。
这一轮故意没有写任何译文,也没有做机器翻译——这是产品文案,不是工程决定。⛔ 本席不代维护者决定产品文案。
今天不做的代价是可控的:英文标题会通过回退链到达所有语言,面板在任何语言下都可读,只是列头是英文。
请回一个字母:A(推荐)/ B / C。
The decision
|
option |
consequence |
| A (recommended) |
A maintainer or translator authors all four locales; a follow-up card lands the *.form.ts child enumeration plus the catalogs together, pinned the way dashboard-header-children.test.ts pins the #17227 leaves |
one coherent landing; needs human copy for 3 non-English locales |
| B |
Land the form-child enumeration and the generated en leaves now; fill the three translated catalogs later |
⚠️ creates exactly the half-state dashboard-header-children.test.ts pins AGAINST — its last test asserts each translated leaf is not a copy of the en source, so en-only leaves either red that pin's shape when extended or normalise catalogs that echo English |
| C |
Leave it — the English title already reaches every locale through the fallback chain |
defensible as a stopping point, but it is a product-copy call, not an engineering one — which is why it is here and not decided by the seat |
Four axes
- Reversibility — high. Catalog leaves are additive data; a wrong translation is corrected by editing one leaf. Nothing here changes an accept set or a stored shape.
- Blast radius — presentation only, and only in the Studio property panel. No runtime behaviour, no stored metadata, no API payload.
- Cost of delay — low and flat. The English fallback works today, so C is survivable indefinitely; the cost is a permanently half-localised panel, not a growing debt.
- Cost of the wrong call — B is the only option with a real downside: it is a half-state a pin already exists to refuse, so it risks either a red or a catalog of English strings masquerading as translations.
Measured
origin/main 76ddab772f, 2026-09-10T18:04Z. All figures derived in #17232's round through the platform's own predicate, not from source regex:
604 catalog leaves for full localisation of all 21 object-row carriers × 4 locales
348 of those belong to the 87 properties titled today (83 new + 4 from #17227)
87 row properties titled today, across 14 carriers
Each also needs its children enumerated in the owning *.form.ts before os i18n extract will emit the key. This round enumerated no repeater children in any form file, so no catalog key was emitted and no catalog moved — dashboard-header-children.test.ts stays green (11 passed).
⭐ Worth stating plainly: the round invented no product copy and machine-translated nothing. That was the right call and is why this card exists.
Raised from #17232's round (PR #17500). Related: #17227 (the precedent), #17501, #17502.
Generated by Claude Code
维护者速读
Studio 的属性面板里,重复项(repeater)表格的列头现在开始有了正式英文名——PR #17500 已经给 13 个载体、83 个属性加上了。但要让中文、日文、西班牙文用户也看到母语列头,需要有人写这些译文:合计 604 条目录条目(en / zh-CN / ja-JP / es-ES 四种语言),其中 348 条属于今天已经加了英文名的 87 个属性。
这一轮故意没有写任何译文,也没有做机器翻译——这是产品文案,不是工程决定。⛔ 本席不代维护者决定产品文案。
今天不做的代价是可控的:英文标题会通过回退链到达所有语言,面板在任何语言下都可读,只是列头是英文。
请回一个字母:A(推荐)/ B / C。
The decision
*.form.tschild enumeration plus the catalogs together, pinned the waydashboard-header-children.test.tspins the #17227 leavesenleaves now; fill the three translated catalogs laterdashboard-header-children.test.tspins AGAINST — its last test asserts each translated leaf is not a copy of theensource, so en-only leaves either red that pin's shape when extended or normalise catalogs that echo EnglishFour axes
Measured
origin/main76ddab772f, 2026-09-10T18:04Z. All figures derived in #17232's round through the platform's own predicate, not from source regex:Each also needs its children enumerated in the owning
*.form.tsbeforeos i18n extractwill emit the key. This round enumerated no repeater children in any form file, so no catalog key was emitted and no catalog moved —dashboard-header-children.test.tsstays green (11 passed).⭐ Worth stating plainly: the round invented no product copy and machine-translated nothing. That was the right call and is why this card exists.
Raised from #17232's round (PR #17500). Related: #17227 (the precedent), #17501, #17502.
Generated by Claude Code