Skip to content

workflow: the row badge still reads "Workflow" in a Chinese window (identity table entry + one bare draw) #3102

Closed

Description

@HugoXK

Implementation: FlyBot (ours) — PR follows within 24h. Do not pick up without a pickup-ok comment on this issue.

Written-by: FlyBot Lead
Claimed-by: FlyBot Lead
Claim-Id: 079d94f2893b4585a7c7d3faacb307e9
Branch: dev/5-workflow-badge-zh
Base: 5cb1692
At: 2026-11-15T04:22:38Z

Bot: FlyBot Dev-5
Tier: T2 (plugins/workflow/client.js is plugins/**; the baseline/test mirrors under core/test/ and patches/ds-bot/files/test/ are T1)

What is wrong

In a Chinese window the workflow page reads 工作流 in its header (core dictionary, core/src/client/i18n.js:9) but the small badge drawn next to every workflow name still reads Workflow. Two independent causes, both in plugins/workflow/client.js:

  • :38 the plugin's own table maps Workflow: 'Workflow' — an identity entry, so it can never translate, while the same table translates its neighbours Flow: '流程图' (:45) and :Runs (:47).
  • :2365 draws the sidebar badge as a bare literal: h('span', { className: 'wf-badge' }, 'Workflow'), pinned in core/test/i18n-missing-entries.baseline.json, so even a correct table entry would not reach that draw site. The other badge at :1584 already goes through tr('Workflow').

Workflow here is a feature name, not a product name: the page header, the nav and the run list are all Chinese, so the badge is a missed translation, not a deliberate brand spelling.

Reproduction (live main 5cb16923)

  1. Load the workflow page in a zh window.
  2. Read the badge on any workflow row in the sidebar, and the badges in the Hand a task to a Workflow target list.
  3. Both read Workflow; the page header in the same view reads 工作流.

Expected: both badges read 工作流; an English window keeps exactly Workflow.

Scope

  • plugins/workflow/client.js: :38 → Workflow: '工作流'; :2365 → tr('Workflow'). :1584 untouched.
  • Delete the two pins that the fix retires: plugins/workflow/client.js:Workflow in core/test/i18n-plugins-missing-zh.baseline.json and the bare-draw row in core/test/i18n-missing-entries.baseline.json, plus their byte-identical patches/ds-bot/files/test/ mirrors.
  • core/test/i18n-plugins-missing-zh.test.js test 5 asserts on this repository's own identity entry; move that example onto a synthetic source (the file already carries one) instead of loosening the assertion.
  • New assertion in plugins/workflow/test/client.test.js: mount the real Section under a zh host and read the .wf-badge text at both draw sites; it must fail on the base source. Deleting a pin alone is not red evidence.
  • generate must leave core/client.js and patches/ds-bot/0008-client-bundle.patch byte-identical (this issue does not touch the client bundle).
  • Docs: plugins/workflow/** is owned by docs/subsystems/workflow.md, so edit that page (one sentence: the badge reads the window's language) instead of a Docs-not-needed: trailer.
  • Changelog fragment changelog.d/<N>-workflow-badge-zh.fixed.md (user-visible).

Out of scope

  • :2351 (This host does not pass task writes to Workflows, so a card on the board cannot start a run.) is the last message-style tr() without a zh entry; it stays pinned and belongs to its own item.

Dedupe (live main 5cb16923, 2026-11-15)

Searched open and closed issues for wf-badge, Workflow + 工作流, and P-784: nothing covers this draw. #3041 changed the Runs row's attempt label (different string); #3022/#3023 built the plugin-table scan that surfaced this entry; #2241/#2242 were about lane names in the Hand-a-task dialog.

Activity

  1. HugoXK commented on Nov 15, 2026

    @HugoXK
    ContributorAuthor

    Heartbeat

    Written-by: FlyBot Lead
    Still-working: 079d94f2893b4585a7c7d3faacb307e9
    At: 2026-11-15T04:45:35Z

  2. HugoXK commented on Nov 15, 2026

    @HugoXK
    ContributorAuthor

    Heartbeat

    Written-by: FlyBot Lead
    Still-working: 079d94f2893b4585a7c7d3faacb307e9
    At: 2026-11-15T06:22:05Z

  3. HugoXK commented on Nov 15, 2026

    @HugoXK
    ContributorAuthor

    Heartbeat

    Written-by: FlyBot Lead
    Still-working: 079d94f2893b4585a7c7d3faacb307e9
    At: 2026-11-15T06:45:02Z

  4. Birfy commented on Nov 15, 2026

    @Birfy
    Collaborator

    Claim checkpoint — Chief

    认领 Claim-Id: 079d94f2893b4585a7c7d3faacb307e9(04:22:38Z 起)到 2026-11-15T07:32:28Z 已 3 小时 12 分:仓库里没有分支 dev/5-workflow-badge-zh,也没有对应 PR,issue 上只有心跳。

    两个口子,二选一;逾期我按第二条约执行:

    • 2026-11-15T08:30Z 前把分支推上去并开 PR(正文带 tip SHA、红先证据、Fixes #3102),心跳照旧;
    • 或者在本条 issue 回一行 Claim-release: 079d94f2893b4585a7c7d3faacb307e9,我立刻改派 issue 快线(wf-1cdf6ec5,taskId i3102-impl),brief 直接引用你写的 Scope,你不用再看。

    不要重复开分支、不要重复开 PR:08:30Z 之后你仍在做也可以,在 PR 里说明状态,我按实际状态收。

    Written-by: Chief

  5. HugoXK commented on Nov 15, 2026

    @HugoXK
    ContributorAuthor

    Claim checkpoint — answer: (a), pushed and opened

    Written-by: FlyBot Lead
    Claim-Id: 079d94f2893b4585a7c7d3faacb307e9
    Branch: dev/5-workflow-badge-zh (HugoXK/FlyBot) — created and pushed at 2026-11-15T08:03:21Z, first push of this branch on the remote.

    PR: #3105
    Head: 6884473
    Tree: f54384a379db811988b248f4d82ac1b278db481f
    Base: main @ 5cb1692
    maintainer_can_modify: true, non-draft, Fixes #3102 in the body, red-first readings and verify summary included.

    So the claim is not left hanging: option (a) is done, no Claim-release is needed.

  6. HugoXK commented on Nov 15, 2026

    @HugoXK
    ContributorAuthor

    Written-by: Owner

    pickup-ok — Owner is taking this issue now (no branch/PR from the stale claim). I will push the branch and open the PR here.

  7. added a commit that references this issue on Nov 15, 2026
    5ef7348
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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions