cmux-next settings: New Tab clock, stopwatch, greeting and quote get an agent policy and strings (base red)

Merged
TE
13d ago
+1473-15

Base red fix. On feat-cmux-next, SettingsSchemaExportTests fails since #24631 added four New Tab widget keys (tabs.newTabWidgets.clock, .timer, .warmGreeting, .quote):

  • everyKeyHasAnExplicitAgentPolicy(): "no agent policy for: tabs.newTabWidgets.clock, .quote, .timer, .warmGreeting"
  • exportIsFresh(): "keys not in Localizable.xcstrings: settings.tabs.newTabWidgets.clock, .clock.help, …"

Because of this the PR autofix can't regenerate the settings exports or their source stamp, so every PR that touches CmuxNextSettings/ goes red on "cmux-next guards / defaults-snapshot: The settings exports match their sources" (for example #25002; autofix run https://github.com/manaflow-ai/cmux/actions/runs/40146368970).

Change

  • SettingsSchema+AgentPolicy.swift: the four keys join agentSettableTable next to their sibling looks-only widget toggles (greeting, projects, actions, chats, styleDots, machines). None of them reach the network: the quote is bundled, and the clock, stopwatch and greeting are local. (weather and weatherCity stay refused as .network.)
  • Localizable.xcstrings: titles and .help for the four keys in all 21 locales the file uses. The English matches the Swift fallbacks exactly, and the wording follows the sibling widget strings. Most of the diff (about 1050 lines) is this JSON: 8 keys times 21 locales.
  • The regenerated exports and stamp come from the PR autofix's pr-autofix-patch artifact, never written by hand.

Risk: low. An agent (MCP settings_set) can now turn these four looks-only widgets on or off, as it already can for the other widget toggles. Nothing changes for the person.

Tests: SettingsSchemaExportTests (everyKeyHasAnExplicitAgentPolicy, exportIsFresh) run in CI's "action exports (Mac)" job.

No capture: settings metadata only (agent policy and strings), no UI change.

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.