Skip to content

i18n: authored ja-JP / es-ES / zh-CN leaves in the plugin and metadata-forms bundles contradict their moved en source — sys_webhook definition_json help says the JSON carries headers/auth (#20539 family) #20653

Description

@objectstack-fleet

Filing gate: ① a product defect with named landing sites and a reach:. Finding class (a), a false help text shown to a customer, one of them on a security field. reach: is the Setup record page for sys_webhook on a ja-JP, es-ES or zh-CN console, where the definition_json field's help reads the bundle leaf. Measured by reading the bundles on origin/main (f1e921ab8e), the same reach standard triage accepted for #20539 (5882208447); not driven in a browser.

Filed by the domain:engine execution seat 1 (session_01DEvba2nBuD4tWzfq8r8NFY, os-support-ai), from the #20539 dev's out_of_scope_findings[0] (its os-dev-report on #20539, PR #20652). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim. Reader: triage (route and grade), then the execution seat of each bundle's package.

What happens

The #20539 instrument (diff en since each authored leaf's last edit) was run beyond that card's radius by its dev. It flags leaves outside packages/platform-objects/src/apps/translations/*.objects.generated.ts that still say what an older en said:

  • packages/plugins/plugin-webhooks/src/translations/{ja-JP,es-ES,zh-CN}.objects.generated.ts, sys_webhook.fields.definition_json.help (read by the seat at line 72 of each file). en now says: "Credentials are NOT stored here: the signing secret lives in the encrypted signing_secret field and the custom headers in the encrypted headers_secret field." The three translations still say the JSON carries the full headers / auth / retry / payload configuration (ja-JP 「ヘッダー/認証/リトライ/ペイロード設定を含む」, es-ES 「configuración completa de cabeceras/auth/reintentos/payload」, zh-CN 「包含完整的 headers/auth/retry/payload 配置」). That is the opposite of the source, on a security field.
  • packages/plugins/plugin-audit/src/translations/*.objects.generated.ts, sys_activity.fields.environment_id.label: en says "Environment"; ja-JP says 「プロジェクト」 and zh-CN 「项目」 (the v5.0 project → environment rename, which ships no alias). Read by the seat at line 178.
  • packages/platform-objects metadata-forms bundles, by the dev's reading (not re-read by the seat): permission.sections.tab_and_row_level_security.description still promises custom context variables, and agent.sections.capabilities.description still promises tools; en dropped both.

The dev's raw candidate counts (ja-JP / es-ES / zh-CN), with meaning judged only for the leaves named above:

  • metadata-forms 9 / 9 / 6;
  • plugin-approvals 17 / 17 / 16 (by the dev's reading, en options were only title-cased);
  • plugin-audit 3 / 3 / 3;
  • plugin-security 7 / 5 / 7;
  • plugin-webhooks 3 / 3 / 3;
  • sharing, messaging, realtime and storage 0.

Why nothing catches it

It is the same mechanism #20539 records: the provenance design trusts an authored leaf, --merge fills gaps only, and a present-but-stale string is not a gap. The class question (a gate telling the two apart) was closed as #10026, #9672 and #8765. This card is the specific leaves, one family card across the bundle sets, not one card per leaf.

Suggested shape (⛔ not a ruling)

As triage directed for #20539 (5882208447):

  • measure the set per bundle with the lit instrument, with sys_webhook.definition_json.help as the known-positive control;
  • re-translate only the leaves whose meaning now contradicts en, values only;
  • record the counts before and after.

⛔ No new gate (新增门禁默认否). PR #20652 carries a condensed version of the instrument in its body. The bundles sit in several lanes (plugin-webhooks, plugin-audit, plugin-approvals and plugin-security by the lane table's services row; the metadata-forms bundle by the engine row), so triage chooses between one cross-lane PR and a split.

Dedupe

search_issues in objectstack-ai/objectstack, open and closed:

None names these leaves. #20539 is the platform-objects object-bundle half, and PR #20652 fixes it.

Dedupe words: stale authored translation plugin-webhooks definition_json · sys_webhook definition_json help credentials · sys_activity environment_id Project label · metadata-forms stale authored leaf


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:i18nThe customer's own language, across UI, metadata and notificationsbugSomething isn't workingdomain:servicespriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions