Skip to content

Match the CMUX_NO_GIT_WATCH contract to bash without a PR poller - #15099

Merged
austinywang merged 2 commits into
mainfrom
fix-no-git-watch-bash-contract
Sep 28, 2026
Merged

austinywang merged 2 commits into
mainfrom
fix-no-git-watch-bash-contract

Conversation

@austinywang

@austinywang austinywang commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

tests/test_shell_no_git_watch.py fails on main with Apple's /bin/bash 3.2. The two PRs involved conflict:

Neither PR's CI ran the test against the other's change. The macOS shell lane now fails on any PR whose app-host shard 4/7 gets that far, for example #12809 (run 36368050143, job 108761357376).

The bash subtests now check what bash still does:

  • stop its tracked Git job,
  • suppress branch and PR reports,
  • discard PR action hints and the hint file.

The PR-poll PID and cache-file checks now run for zsh only, since zsh still has both. docs/shell-integration.md now says the same. No shell integration code changes.

Changelog

none

Validation

  • Red on origin/main at 2aa892bd86, bash 3.2.57: python3 tests/test_shell_no_git_watch.py fails the bash subtests of test_disabled_prompt_command_and_head_change (six CACHE_REMAINS) and test_next_prompt_stops_tracked_jobs. In the second, the _CMUX_PR_POLL_PID process outlives the prompt; the _CMUX_GIT_JOB_PID process is stopped.
  • Green on 726468cbf9 and again on 4aa4b8bfdd, a one-word doc fix: the same command passes all 5 tests.
  • Mutation checks, both reverted:
    • Making zsh's _cmux_pr_cache_clear a no-op fails the zsh subtest.
    • Removing bash's Git-job kill fails the bash subtest of test_next_prompt_stops_tracked_jobs.
  • python3 scripts/verify-local.py: 14 of 15 checks passed. swift-syntax was skipped because the change has no Swift files.
  • Hosted CI skipped the macos workflow for this test-and-docs diff, so the macOS shell lane didn't run this test on this branch. The local run above is the evidence. It stays in the macos-shell lane because it needs Apple's /bin/bash 3.2 and /bin/zsh.
  • Review subagent: no defects. It also mutated both shells' opt-out paths and confirmed that each mutation fails the matching subtest.
  • Localization: docs/shell-integration.md is English-only, with no web or locale copies. No catalog strings changed.

🤖 Generated with Claude Code

#15074 pinned bash to stopping _CMUX_PR_POLL_PID and deleting the per-panel
PR cache files at the opt-out prompt. #15075, merged minutes later, removed
bash's PR poller and deliberately leaves old cache files alone, so
tests/test_shell_no_git_watch.py fails with Apple bash 3.2 on main.

The PR-poll and cache checks now run for zsh only, which still has both;
bash is still held to stopping its tracked Git job and every other opt-out
behavior. docs/shell-integration.md says the same.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@coderabbitai

coderabbitai Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Warning

Review limit reached

Next included review available in 27 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 10 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Repository: manaflow-ai/cmux/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 343f1813-6ea7-4a33-8d79-76af610bacc1

📥 Commits

Reviewing files that changed from the base of the PR and between 8819b51 and 4aa4b8b.

📒 Files selected for processing (2)
  • docs/shell-integration.md
  • tests/test_shell_no_git_watch.py
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cursor

cursor Bot commented Sep 28, 2026

Copy link
Copy Markdown

Bugbot is paused — on-demand spend limit reached

Bugbot uses usage-based billing for this team and has hit its on-demand spend limit.

A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue.

@austinywang
austinywang merged commit 5bee212 into main Sep 28, 2026
42 checks passed
@austinywang
austinywang deleted the fix-no-git-watch-bash-contract branch September 28, 2026 03:14
@github-actions

Copy link
Copy Markdown
Contributor

Merge receipt for 4aa4b8bfdd: every check was green at merge (10 verified; 12 skipped by policy). Full suite runs on main after merge.

rustybret pushed a commit to rustybret/bmux that referenced this pull request Sep 28, 2026
10505af fix(cloud): recover machine list on app foreground (manaflow-ai#15100) (manaflow-ai#15104)
22835e8 Docs: raise search field contrast (manaflow-ai#14365)
18abc85 Report a non-running terminal as surface_unavailable in read_text (manaflow-ai#15101)
b23420c Document and tool in-place cmux-tui upgrades for running Cloud machines (manaflow-ai#15122)
f1c54d0 ci: charge newer runs one root runner each when gui runners are on (manaflow-ai#15124)
b7ce8d0 Bound the Iroh release-gate launcher
3606617 Stop CLI Sentry floods from caller state and unattributed journal failures (manaflow-ai#15103)
446581e ci: send owned gui jobs past a round of the gui queue to Blacksmith (manaflow-ai#15115)
507890c ci: refit the warm-distance model on 741 owned admissions (manaflow-ai#15117)
5bee212 Match the CMUX_NO_GIT_WATCH contract to bash without a PR poller (manaflow-ai#15099)

# Conflicts:
#	.github/workflows/ci-macos.yml
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