Repository navigation
cmux NEXT: the host pressure warning is off by default; Show / Hide Host Pressure Warning in the palette - #32374
Conversation
…h nothing set Red on the base: #32179 made hostPressure.enabled default on, so a seen window's indicator subscribes and starts the 15 s monitor. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ost Pressure Warning in the palette Lawrence 2026-11-02: "get rid of host-pressure warning by default, can be enabled in cmd shift p tho". Takes back #32179. - hostPressure.enabled defaults to false. With it off, no window's indicator subscribes, so HostPressureService (its monitor, the 15 s timer and the critical banner) is never made; the gauge stays hidden. - Show Host Pressure Warning / Hide Host Pressure Warning (hostPressure.showWarning / hostPressure.hideWarning; palette, DEV and NIGHTLY like the tunable store) set the same Debug toggle through DebugTunableSwitchActions (CmuxNextSettingsWindow), bound with bindEffect. Hide removes the override, as the Debug Settings row does. Every window's indicator follows the store's Observation. - English and Japanese (and the other catalog locales) in ActionCatalog.xcstrings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sign, the package's declared dependency Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Not verified: macOS jobs did not run: compile and app tests were skipped on CI passes on Written by Default changesThis pull request changes 3 defaults at
Needs a review. It passes with an independent review receipt on this commit: a comment or review whose first line is Merge receipt: merged as Regenerate the snapshot with Shipped in:
|
|
Review (claude-review-subagent): SHIP at a6f695c Independent correctness review (read only, no local build). Checked:
Non-blocking notes:
|
…s added, not a reformatted copy Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review (claude-review-subagent): SHIP at 4e1f681 Re-review after the merge of origin/feat-cmux-next (ab527e0) and the xcstrings repair (4e1f681). Read-only; nothing compiled or run locally.
No blocking findings. |
…move 11-04) Prove-or-remove step 3 (deletion-wave-list.md, p12-perf-process). Row p12-18 is the switch hostPressure that p12-perf-process-103 (a06867b, db70c38) made from the Debug toggle hostPressure.enabled. No A/B was planned; it has no proof. The host pressure gauge itself (monitor, service, indicator, popover, banner) came from feat (#24298, #24507, #24518) and stays. Removed: the switch json and its generated registry entry, its dogfood-set name, its feature-switch-table row, HostPressureAndSnapshotFeatureTests (it tested only the two removed switches) and the switch inputs of HostPressureIndicatorTests. The indicator reads its Debug toggle again, as before the row and as on feat: enabled and the forced level are one observation, so turning the toggle on or off applies live; the toggle help and the host-pressure media tour are back to the toggle. Default behavior: the switch was off in every channel, so DEV, NIGHTLY and Release do not change (no gauge, no 15 s host read). It was on in the chrome-parity dogfood set: a dogfood build now shows no gauge unless a person turns the toggle on, which is feat's behavior since #32374 (Lawrence 2026-11-02). Red test: HostPressureDogfoodDefaultTests (previous commit), red on the base, green here (fleet).
Summary
The host pressure warning (the titlebar gauge, its popover and the critical banner) is off by default again. It can be turned on from the Command Palette: Show Host Pressure Warning, and off with Hide Host Pressure Warning.
Reason for the default change, in Lawrence's words: "get rid of host-pressure warning by default, can be enabled in cmd shift p tho" (Lawrence decision relayed by cmux-ad).
Takes back #32179: #32179 (Leo, merged 2026-11-02) turned
hostPressure.enabledon by default; Lawrence decided it ships off and is opt-in from the palette.HostPressureTunables.enableddefaults tofalse. With it off, no window's indicator subscribes, soHostPressureServiceis never made: no monitor, no 15 s timer, no reads, no banner, and the gauge stays hidden (HostPressureIndicatorView.join()is the only place that makes the service, and only whileHostPressureSampling.samples).hostPressure.showWarning/hostPressure.hideWarning: two palette actions that set the same Debug toggle, the same pattern as Enable / Disable Channels. They are bound withregistry.bindEffectthrough a small package helper,DebugTunableSwitchActions(CmuxNextSettingsWindow), so the app gets one line. Hide removes the override, as the Debug Settings row does for a default value. Each window's indicator already follows the tunable store's Observation, so it starts or stops sampling and shows or hides the gauge with no other call. Debug Settings still shows the same toggle.isDebugOnly(DEV and NIGHTLY), as the toggle itself: Release and RC never activate the tunable store, so the warning stays off there whatever is set. CLI surface exemptdevOnly, no context menu (noObject), asappearance.glass.lens.toggle.ActionCatalog.xcstringswith English, Japanese and the other 19 catalog locales.schemas/defaults/cmux-next.jsonis bot-only (Stop parallel feat-cmux-next PRs from conflicting in generated files and registries #21946): this PR does not commit it; the base autofix regenerates it after the merge (tunable.hostPressure.enabledthen readsfalse).#31937 (rust-migration host pressure step A) changes only Rust and FFI files; this PR does not touch them or
CmuxNextHostPressure, so the two do not overlap.Testing
HostPressureIndicatorTests/theToggleShipsOffAndOffNeverMakesTheServiceat the test-only commit 0ea04bd (base default on): job31231449e4ecce4904bd373efailed as expected (defaultValueis true; the indicator samples and makes 1 service with nothing set).HostPressureIndicatorTests,HostPressureBannerTests,HostPressureWarningActionsTests(new: Show subscribes the indicator, the monitor runs and the gauge shows; Show again changes nothing; Hide removes the override, the monitor stops and the gauge hides): job0fbee53a5e9c13eea149c570, all 3 suites passed (one existing test skipped:showDetailsOpensThePopoverneeds a screen).cmux-ci compile-check --app) at the head: joba29877c59c61d6d065782cf7passed.python3 scripts/cmux-next/prepush-gate.py: no new violations; arch-ratchetapp_lines -1.Observed / Not run
Observed: the jobs above. Not run:
scripts/cmux-next/check-action-surfaces.shon the fleet (my run was cancelled; the PR autofix and CI's generated-files and swift-test jobs cover the catalog exports),HostPressureBannerToastTestson a display worker (unchanged by this PR), a live tagged build.After the merge of feat (head 4e1f681)
5bdf2ad8a4587535831e0283passed.27734c78738216f4705ed244, all passed (the same 1 skip).Changelog
Changed: Host pressure warning is off by default; turn it on from the Command Palette.
Proof
No capture: default-off removes the gauge; the palette entry is standard.