The record create/edit form groups fields into sections and renders them as a
tab strip. That strip displays the untranslated section labels in every
locale — even when the bundle carries a complete _sections block that the
detail page for the same object resolves correctly.
Observed (17.0.0-rc.2, HotCRM)
New Case form: tab strip reads Case • / SLA / Resolution in all four locales.
The same object's _sections translations exist and work elsewhere — the case
detail page renders 工单信息 / 状态与SLA under zh-CN from
objects.crm_case._sections.*. So this is not a missing key or an incomplete
bundle: the form renderer simply never consults _sections for its tab strip,
while the detail-page renderer does.
(As of objectstack-ai/hotcrm#697 all four HotCRM locales carry all 85 declared
section headings, so any locale is now a ready-made reproduction: every
translated heading appears on the detail page and stays English on the form
tabs.)
Why this is distinct from neighbouring issues
Expected: the form section tab strip resolves headings through the same
_sections lookup the detail page uses (objects.<o>._sections.<key>.label,
falling back to the authored label).
Downstream: objectstack-ai/hotcrm#683 (part 1).
The record create/edit form groups fields into sections and renders them as a
tab strip. That strip displays the untranslated section labels in every
locale — even when the bundle carries a complete
_sectionsblock that thedetail page for the same object resolves correctly.
Observed (17.0.0-rc.2, HotCRM)
New Case form: tab strip reads
Case • / SLA / Resolutionin all four locales.The same object's
_sectionstranslations exist and work elsewhere — the casedetail page renders 工单信息 / 状态与SLA under zh-CN from
objects.crm_case._sections.*. So this is not a missing key or an incompletebundle: the form renderer simply never consults
_sectionsfor its tab strip,while the detail-page renderer does.
(As of objectstack-ai/hotcrm#697 all four HotCRM locales carry all 85 declared
section headings, so any locale is now a ready-made reproduction: every
translated heading appears on the detail page and stays English on the form
tabs.)
Why this is distinct from neighbouring issues
tabs[].label) have no translation key and no resolver — the list-page tab bar is untranslatable in every locale #5377 / hotcrm#661 (list-view tab bar) — that surface resolves via thereferenced view's
_viewslabel on rc.2 and is fixed.objects.<o>._sections— a bundle can ship every section heading in English and lint zero warnings #5405, filed separately) — this is therenderer half: the key path exists, is authored, and is ignored by one
component.
Expected: the form section tab strip resolves headings through the same
_sectionslookup the detail page uses (objects.<o>._sections.<key>.label,falling back to the authored label).
Downstream: objectstack-ai/hotcrm#683 (part 1).