Repository navigation
Tighten welcome, cmux-cua build, and codex wrapper follow-ups - #14857
Conversation
- Skip the automatic welcome for workspaces launched with an explicit command; `shell -lc` never loads the integration that prints it. - Read the uid once in the codex wrapper's emitter shell before the helper command substitutions. - Do not add an empty (current-directory) PATH entry in build-cmux-cua.sh when PATH is empty. - Count duplicate cask macOS requirement lines instead of deduplicating. - Assert the tmux welcome case still consumes the token. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
All contributors have signed the CLA ✍️ ✅ |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: manaflow-ai/cmux/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (5)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 1 remain after this review. 📝 WalkthroughWalkthroughThe patch updates Codex wrapper UID caching, skips automatic welcome delivery when a workspace has a nonblank initial command, handles empty inherited PATH values, and changes how a shell test counts duplicate symbols. ChangesCodex wrapper UID caching
Welcome delivery for initial commands
Build script PATH construction
Homebrew cask symbol counting
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The changes appear ready to merge after normal checks. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The change removes an unintended working-directory search for build tools. No new security issue was identified, but the behavior of caller-supplied tool paths and host-specific build environments was not fully established. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 24 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (24 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 4 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
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. Comment |
|
Merge receipt for |
413ece1 CI tooling, guard and test hardening (manaflow-ai#14864) a4e4aa4 Keep set-buffer text exact and read it from stdin (manaflow-ai#14836) 83ed511 Tighten welcome, cmux-cua build, and codex wrapper follow-ups (manaflow-ai#14857) 8c9d2c9 perf: keep the durable event log open across flushes (manaflow-ai#14829) 6d876f9 Send the PTY paste test's Cmd+V to a first-responder terminal (manaflow-ai#14825) f190c87 Re-supply user-declared external agent launchers on resume (manaflow-ai#10503) d522606 web: render changelog features as patch notes cards (manaflow-ai#14869) b5d0bff Stop other bundles and scripts from killing the running cmux (manaflow-ai#14831) # Conflicts: # .github/workflows/ci-main-full-suite.yml
Follow-ups from CodeRabbit review on recently merged shell and CLI PRs. A workspace launched with an explicit command no longer uses up the first-launch welcome. Before this change the app marked the welcome as shown even though the banner never printed. The codex wrapper reads the uid once per emitter shell instead of up to three times.
build-cmux-cua.shno longer lets an emptyPATHresolvegit/cargofrom the current directory. Two tests now catch cases they previously missed.Fixes
Sources/TabManager.swift). AninitialTerminalCommandruns via<shell> -lc, which does not load cmux's interactive shell integration. The welcome token was never consumed, butwelcomeShownwas still set. Automatic welcome delivery is now skipped when the command is non-empty, so the next plain workspace shows the banner. From Print the first-launch welcome from shell startup instead of typing it #14809, comment.tests/test_shell_welcome_banner_startup.py). From Print the first-launch welcome from shell startup instead of typing it #14809, comment.scripts/build-cmux-cua.sh). The script now appends with${PATH:+${PATH}:}, so an emptyPATHno longer adds a leading:. From fix(scripts): keep the caller's PATH first in build-cmux-cua.sh #14665, comment.tests/test_ci_homebrew_cask_macos_dependency.sh). The test used to passsort -uoutput to the exactly-one check. Two identicaldepends_on macos:lines now fail it. From fix(homebrew): generate the symbol form of depends_on macos #14424, comment.Resources/bin/cmux-codex-wrapper).cmux_codex_emit_computer_use_argsruns the uid check beforeclient="$(...)"andauth_token="$(...)", so those helpers inherit the cached value and do not each fork/usr/bin/id -u. From perf(codex-wrapper): verify the cmux-cua client path with one stat process #14835, outside-diff comment in review 5326369442.Validation
bash -non the edited shell scripts passed (shellcheck is not installed here).tests/test_ci_homebrew_cask_macos_dependency.sh,tests/test_shell_welcome_banner_startup.py,tests/test_codex_wrapper_computer_use_mcp.pyandtests/test_cmux_cua_build_cache_safety.pypassed locally.TabManager.swiftguard was not compiled locally. CI covers the Swift build.🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Follow-up fixes from review on recently merged shell and CLI PRs. A workspace launched with an explicit command no longer consumes the first-launch welcome banner, and the codex wrapper and cmux-cua build script are tightened.
Bug Fixes
shell -lcnever loads the integration that prints it./usr/bin/id -uin each helper.build-cmux-cua.shno longer lets an emptyPATHresolvegit/cargofrom the current directory.Written for commit 8595a80. Summary will update on new commits.
Summary by CodeRabbit
PATHwithout adding a leading separator.