You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(app-shell): localize the two DeclaredActionsBar strings that bypassed i18n (#2762 P0-3) (#2894)
The declared action labels resolve through `useObjectLabel`, so a zh-CN
workspace got 通过 / 拒绝 buttons — sitting inside a toolbar whose accessible
name was the English literal 'Actions', above decision-output fields whose help
text read "Handed to the flow as a decision output." Both strings are authored
by the bar itself rather than by metadata, and both skipped the locale bundle.
`aria-label` now uses the existing `common.actions` key; a host-supplied
`label` still wins. The help text moves to new `actions.decisionOutput.help` /
`.helpMultiValue` keys, added across all ten shipped locales.
The help text needed fixing even though the runtime localizes action params:
`useConsoleActionRuntime` runs every param through `actionParamText`, but these
params are synthesized from the record's `decision_output_defs`, so their key
path (`outputs.<key>`) is dynamic and no `_actions.<action>.params.*` entry can
ever match. The fallback is not a rare path — it is the only path.
Left alone deliberately: a decision output arriving without a `label` still
renders a title-cased version of its machine key, mirroring the framework's
`humanizeFieldPath` convention. The fix there is the backend declaring the
label; a client bundle cannot key off a dynamic output name.
Tests assert the strings go through `t()` rather than merely being English —
they fail against the previous literals.
Framework half: objectstack-ai/objectstack#3753.
0 commit comments