Skip to content

cmux NEXT Home: plural step counts in every locale; the store keeps the thought's headline, not its text - #22707

Merged
teamleaderleo merged 15 commits into
feat-cmux-nextfrom
feat-cmux-next-chief-progress-plurals
Oct 21, 2026
Merged

teamleaderleo merged 15 commits into
feat-cmux-nextfrom
feat-cmux-next-chief-progress-plurals

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

This is a follow-up to #22644, which merged before its review findings were fixed.

  • Plural forms. The Chief's running indicator folds finished steps into counts like "Ran 3 commands", "Read 2 files" and "4 more steps". Each of those six strings now has plural variations in all 21 locales of CmuxHome.xcstrings, and each is recorded in scripts/localization-plurals.json.
    • Arabic had used one plural form for every count. It now has its dual form for 2, plural for 3–10 and singular accusative for 11 and up.
    • Polish, Russian, Ukrainian and Bosnian get their few and many forms.
    • French, Spanish, Italian and Portuguese get "many".
  • Headline only in the store. The live book now publishes only the headline of the Chief's newest thought (HomeThoughtHeadline, moved into CmuxHomeCore), not the whole thought of up to 64 KiB. A streamed thought token now changes HomeStore.live only when the line a person sees changes. The headline rule itself is unchanged: last bold heading, else last sentence, at most 72 characters.

Test

HomeTurnThoughtStoreTests now checks that the store holds the headline, not the raw text, and that a later heading replaces it after the thought's step ends.

Observed / Not run

  • Observed:
    • scripts/cmux-next/prepush-gate.py passes.
    • localization_catalog.py check --catalog …/CmuxHome.xcstrings reports no errors other than needs_review states; every machine translation in this catalog carries that state.
  • Pending: MessagesLab Swift tests on the fleet at this head. cmux NEXT Home: while the Chief works, show its steps, its thought and the step now #22644's head (4c8f1ee) passed all 52 suites on the fleet.
  • Not run: a tagged build or a screenshot. Nothing is built on the Mac.

Agent session: cosmic-gray

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.


Summary by cubic

Fixes the review findings from #22644: the Chief's folded step counts now use plural forms in every locale, and the store keeps only a thought's headline instead of its whole text.

Plural forms

  • Six running-indicator strings now have plural variations in all 21 locales of CmuxHome.xcstrings, recorded in scripts/localization-plurals.json.
  • Arabic gains its dual form for 2 and plural for 3–10; Polish, Russian, Ukrainian, and Bosnian gain few and many forms.
  • ja, km, ko, th, vi, and zh had only the other category; their single form now repeats other, satisfying check-l10n.sh.

Headline in the store

  • The live book publishes only the newest thought's headline (HomeThoughtHeadline, moved into CmuxHomeCore) instead of the whole thought (up to 64 KiB), so a streamed token changes HomeStore.live only when the line a person sees changes.
  • The headline rule (last bold heading, else last sentence, at most 72 characters) is unchanged, and the headline stays as the run's narration until the next thought.
  • The running indicator now shows the published headline as it is, without headlining it a second time.
  • HomeTurnProgressTests verifies the store holds the headline, not the raw text, and that a later heading replaces it.

Written for commit 75a8be4. Summary will update on new commits.

View guided diff Turn on auto-fix

@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 75a8be4: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr22707 -f ref=feat-cmux-next-chief-progress-plurals -f platform=macos -f backend_mode=local

Not verified: macOS jobs did not run: compile and app tests were skipped on 75a8be4c77; ci-status is green without them.

CI passes on 75a8be4c77 (run 39554019117 attempt 1).
macOS jobs did not run: compile and app tests were skipped: Fast static checks skipped (the macos job needs both to succeed). Re-run CI once they pass, before merging.

Written by scripts/ci/classify_failures.py (ci-failure-attribution.yml); signatures are its SIGNATURES table. A machine verdict is the runner's fault, not this PR's; yours means the failing file is one this PR changes, also red on main that main's latest full suite fails the same way, seen on other PRs that it failed on another pull request's run lately.

web and size checks: green

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next guards / defaults-snapshot is red on 23 of 24 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

@blacksmith-sh

This comment has been minimized.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Bead cx-iozjz created for this PR by the cmux coordinator.

@blacksmith-sh

This comment has been minimized.

@cursor

cursor Bot commented Oct 21, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot uses usage-based billing for this team and requires on-demand usage to be enabled.

A team admin can enable on-demand usage in the Cursor dashboard.

@blacksmith-sh

This comment has been minimized.

@blacksmith-sh

This comment has been minimized.

@cursor

cursor Bot commented Oct 21, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot uses usage-based billing for this team and requires on-demand usage to be enabled.

A team admin can enable on-demand usage in the Cursor dashboard.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next guards / nightly-guards / workflow-guard-tests / release-notary is red on 15 of 18 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Owned by projects-3f on cosmic-gray · session

check-l10n.sh requires each language to have all of English's plural
categories; ja, km, ko, th, vi and zh had only other. Their one form
repeats other, as the repo's other plural keys do.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15cfc-663f-7650-b9f7-64d198c6b88b&host=cosmic-gray
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Orphan sweep (owner session): the independent subagent review found one blocking issue. check-l10n.sh requires every language to have all of English's plural categories, and ja, km, ko, th, vi and zh-Hans/Hant had only other. Pushed 75a8be4, which adds one (equal to other) for those 7 languages on the 6 keys. A local check-l10n.sh run now reports 0 errors, and the "checks (l10n)" job is green.

Remaining reds, all also red on feat-cmux-next:

  • defaults-snapshot: settings exports were stale on base 06:10–06:50Z.
  • swift test: the shared AppKit UI reds plus ActionRunCreatedTests. Nothing in Home.
  • generated files: stale settings exports on base.

The fleet compile-check of the app at merge ref d695462 passed.

@teamleaderleo
teamleaderleo merged commit c4fc4e9 into feat-cmux-next Oct 21, 2026
@teamleaderleo
teamleaderleo deleted the feat-cmux-next-chief-progress-plurals branch October 21, 2026 08:32
teamleaderleo added a commit that referenced this pull request Oct 21, 2026
scripts/localization-plurals.json keeps both base's home.turn.* keys (#22707)
and this PR's importSuggestions.* keys.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15cfc-663f-7650-b9f7-64d198c6b88b&host=cosmic-gray
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

merge-audit: #22707 merged at 75a8be4 without no SHIP review receipt on the head; no risk tier label. #23289 reverts it. To keep this change, add the missing evidence for 75a8be4 here; the next audit pass then closes #23289. Otherwise review and land #23289.

@github-actions

Copy link
Copy Markdown
Contributor

Shipped in:

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (subagent, correctness first): SHIP at 75a8be4

This is a post-hoc independent review of the merged change (merge commit c4fc4e9). It was read-only and nothing was run. risk:low (strings catalog plus a moved helper).

Nothing blocks. Notes:

  • All six home.turn.* plurals were checked in 21 locales against the CLDR categories, and each form has one %lld.
  • Predates this PR: a last line like ***** counts as a heading and drops an earlier real heading (HomeThoughtHeadline.swift:17).

The merge-audit revert of this PR is handled separately. See leo-workspace briefs/2026-10-20-gui-push/revert-triage.md.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant