Skip to content

base red: cmux-tui Cargo.lock matches #31462's fs4 dependency - #31654

Closed
lawrencecchen wants to merge 2 commits into
feat-cmux-nextfrom
base-red/cmux-tui-lock-fs4
Closed

lawrencecchen wants to merge 2 commits into
feat-cmux-nextfrom
base-red/cmux-tui-lock-fs4

Conversation

@lawrencecchen

@lawrencecchen lawrencecchen commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Base red on feat-cmux-next at 765d3c4 (#31462): every --locked cargo step fails with [cmux-tui] error: cannot update the lock file cmux-tui/Cargo.lock because --locked was passed.

Cause

#31462 added fs4.workspace = true to cmux-tui/crates/cmux-tui/Cargo.toml. Its Cargo.lock change put "fs4" into the dependency list of the cmux-server package (line 1527), not the cmux-tui package. cmux-server does not depend on fs4, so Cargo must rewrite the lock.

Fix

This commit is only the lock that Cargo writes (cargo metadata --format-version 1 --manifest-path cmux-tui/Cargo.toml, resolve only, no hand edit): "fs4" moves from cmux-server to cmux-tui. The diff is 1 line removed and 1 line added. No version or checksum changes.

Verification

  • Red at the base tip d3aaa26: cargo metadata --format-version 1 --locked --manifest-path cmux-tui/Cargo.toml gives error: cannot update the lock file ... because --locked was passed (exit 101).
  • Green on this head: the same command with --locked --offline exits 0.
  • Fleet compile on this head: cmux-ci compile-check --app --package CmuxNext --recipe-version 2 --ref d59b646e2687a548b076ea483c6cbe9df0cd08de. The result is in a comment below.

Observed / Not run

  • Observed: the red and green cargo metadata --locked results above, and prepush-gate.py (no new violations).
  • Not run: cargo build, test or clippy (they are not permitted on this VM; the fleet compile check runs the cmux-tui cargo check).

Changelog

none


Summary by cubic

Fixes the cmux-tui Cargo.lock so --locked cargo steps succeed on feat-cmux-next after #31462 added fs4 as a workspace dependency.

#31462 added fs4.workspace = true to cmux-tui/crates/cmux-tui/Cargo.toml, but its lock change put fs4 under the cmux-server package instead of cmux-tui. Since cmux-server doesn't depend on fs4, Cargo was forced to rewrite the lock, failing every --locked step. This commit moves fs4 to the correct package; the diff is one line removed and one line added with no version or checksum changes. Verified green with cargo metadata --locked --offline on this head.

Written for commit cef3d96. Summary will update on new commits.

View guided diff Turn on auto-fix

#31462 added `fs4.workspace = true` to crates/cmux-tui/Cargo.toml, but its
Cargo.lock change put "fs4" in the dependency list of cmux-server, not
cmux-tui. Every `--locked` cargo step on feat-cmux-next at 765d3c4
fails with "cannot update the lock file cmux-tui/Cargo.lock because
--locked was passed".

The lock here is what `cargo metadata --manifest-path cmux-tui/Cargo.toml`
writes (no hand edit): "fs4" moves from cmux-server to cmux-tui.

Red at d3aaa26: cargo metadata --locked --manifest-path cmux-tui/Cargo.toml
  -> error: cannot update the lock file ... because --locked was passed
Green on this commit: the same command exits 0.
@lawrencecchen lawrencecchen added the risk:low Risk tier (docs/ci/risk-tiers.md) label Nov 2, 2026
@cursor

cursor Bot commented Nov 2, 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.

@github-actions

github-actions Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

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

Review d59b646: 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=pr31654 -f ref=base-red/cmux-tui-lock-fs4 -f platform=macos -f backend_mode=local

red: cmux-next checks (god files, concurrency, crash safety, l10n); no finished base run on 7a9e1ab to compare; do not merge until green; see lane-rules

@lawrencecchen

Copy link
Copy Markdown
Contributor Author

Review (subagent, correctness first): SHIP at d59b646

Checked:

  • git diff origin/feat-cmux-next...HEAD touches only cmux-tui/Cargo.lock: it removes "fs4" from the dependencies of cmux-server and adds it to cmux-tui, in sorted order. No other edits.
  • cmux-tui/crates/cmux-server/Cargo.toml does not declare fs4, directly, through a feature or through a rename. cmux-tui/crates/cmux-tui/Cargo.toml declares fs4.workspace = true (added by 765d3c4, feat(cmux-tui): update installed plugins automatically #31462, which also wrote the lock entry into the wrong package).
  • cargo metadata --format-version 1 --locked --offline --manifest-path cmux-tui/Cargo.toml exits 0 on the head worktree.
  • On an export of the current origin/feat-cmux-next tip (069547c, cmux-tui + workers/cmux-vm), the same command exits 101 with "cannot update the lock file ... because --locked was passed". With only this PR's Cargo.lock swapped in, it exits 0.
  • feat-cmux-next has moved since the merge-base d3aaa26, but no commit since then touches cmux-tui/Cargo.lock or any cmux-tui Cargo.toml, so the lock is still correct on the tip.
  • I ran no cargo build, test, check or clippy, only cargo metadata.

@github-actions github-actions Bot added risk:normal Risk tier (docs/ci/risk-tiers.md) and removed risk:low Risk tier (docs/ci/risk-tiers.md) labels Nov 2, 2026
@blacksmith-sh

blacksmith-sh Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Found 6 test failures on Blacksmith runners:

Failures

Test View Logs
main.DeveloperIdAppTests.test_download_prints_the_active_profile_only/
test_download_prints_the_active_profile_only
View Logs
stubs: /System/Library/Frameworks/Security.framework/Versions/A/Security has no stub/
Security has no stub
View Logs
stubs: CoreFoundation.tbd: install-name /System/Library/Frameworks/
CoreFoundation.framework/Versions/A/CoreFoundation, missing 1: ['_CFRetain']/
CoreFoundation, missing 1: ['_CFRetain']
View Logs
stubs: CoreFoundation.tbd: install-name /System/Library/Frameworks/
CoreFoundation.framework/Versions/A/CoreFoundation, missing 1: ['_log2']/
CoreFoundation, missing 1: ['_log2']
View Logs
test_every_compile_job_names_its_warm_sources (main.ThisTree.test_every_compile_job
_names_its_warm_sources)/
test_every_compile_job_names_its_warm_sources (main.ThisTree.test_every_compile_job
_names_its_warm_sources)
View Logs
test_the_repository_highlights_validate (main.DigestTests.test_the_repository_highl
ights_validate)/
test_the_repository_highlights_validate (main.DigestTests.test_the_repository_highl
ights_validate)
View Logs

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

@lawrencecchen

Copy link
Copy Markdown
Contributor Author

Fleet compile on head d59b646: cmux-ci compile-check --app --package CmuxNext --recipe-version 2 job 4259f88936bafb0904932919 passed (CmuxNext 249 s, app 25 s, cmux-tui cargo check 52 s). The tip at 765d3c4 is red on the cmux-tui --locked step (tip watcher job 6c643f966ba76c64b29c72aa).

@lawrencecchen lawrencecchen added the ready-to-land Reviewed at this head; next-autoland merges it into feat-cmux-next when its only reds are base reds label Nov 2, 2026
@lawrencecchen

Copy link
Copy Markdown
Contributor Author

Superseded by #31697, which carries this commit unchanged plus the panic ratchet fix (#30712) and the Linux clippy fix (#31462) that the lock error hid. The merge service gave this PR no verdict because the panic ratchet is red on its candidate. I close this PR after #31697 merges.

@lawrencecchen

Copy link
Copy Markdown
Contributor Author

Superseded by #31717 (merged b732874), which fixes the same cmux-tui/Cargo.lock fs4 entry. #31697 now carries only the panic ratchet fix (#30712) and the Linux clippy fix (#31462).

This branch was previously deployed

3 inactive deployments
artifacts — cef3d96c Deployed Nov 2, 2026 by cmux-bot[bot] via publish tree-addressed cmux-tui #98702
sentry-dsyms — cef3d96c Deployed Nov 2, 2026 by cmux-bot[bot] via upload cmux-tui dSYMs to Sentry #98702
ci-routing-agent — cef3d96c Deployed Nov 2, 2026 by cmux-bot[bot] via cmux-tui tree preflight #98702
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-land Reviewed at this head; next-autoland merges it into feat-cmux-next when its only reds are base reds risk:normal Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant