Repository navigation
base red: clone-mark asks role::acpmux_home for acpmux's home, no literal state root (after #33140) - #33218
Conversation
…eral state root (after #33140) #33140 (8ac30a4) added clone_mark.rs MARKER = "/home/cmux/.acpmux/clone-boot", a literal state root that check-state-roots refuses (baseline 0 for that file). role.rs already names the work user's acpmux home once (its reviewed baseline row); that line is now role::acpmux_home, and clone_mark::marker() builds the path from it and daemon_spec::WORK_HOME. The path is the same. Red at 8ac30a4 and at tip: scripts/cmux-next/check-state-roots.sh clone_mark.rs has 1 literal state root line(s), baseline 0 Green here: check-state-roots: ok. No baseline change. Test: tests/linux_agent.rs clone_mark_writes_in_the_work_users_acpmux_home pins the path (Linux; runs on the fleet/CI, not on this VM).
|
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)
Shipped in:
|
|
Review (independent subagent): SHIP at 8f8d81a Checked by reading and with the static checks (no Rust build on this machine):
|
|
Found 1 test failure on Blacksmith runners: Failure
|
|
Fleet step c030229917d137da27feaf16 (Linux, Blacksmith) at 8f8d81a: |
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Fixes the
cmux-next checksred "No literal state roots (per-build isolation S7, cx-is1kf.8)" at feat-cmux-next tip. It is red on every PR now (seen on #33175). Culprit: #33140 (8ac30a4).Cause
#33140 added
pub const MARKER: &str = "/home/cmux/.acpmux/clone-boot";incmux-host/src/cloud/clone_mark.rs. That is a literal acpmux state root.check-state-roots.shrefuses it: the file has no baseline row (0).Takes back #33140: only its literal MARKER path in clone_mark.rs; the marker path is now made from role::acpmux_home and is the same, so #33140's behavior stays.
Fix
role.rsalready names the work user's acpmux home in one place (home.join(".acpmux"), a reviewedkeeprow of the baseline). That line is nowrole::acpmux_home(home).clone_mark::marker()makes the marker path fromacpmux_home(WORK_HOME)andMARKER_NAME(clone-boot, the name acpmux'shub/clone_boot.rsreads). The path is the same:/home/cmux/.acpmux/clone-boot. No baseline change, no exception.marker()is Linux only, asroleand theclone-markverb are.Regression test:
tests/linux_agent.rsclone_mark_writes_in_the_work_users_acpmux_homepins the path.Red at the base, green at the head
Command:
scripts/cmux-next/check-state-roots.shcmux-tui/crates/cmux-host/src/cloud/clone_mark.rs has 1 literal state root line(s), baseline 0check-state-roots: okChangelog
none
Observed / Not run
Observed:
check-state-roots.shred and green as above; rustfmt--checkon the 4 changed files passes;prepush-gate.pypassed.Fleet step:
cmux-tui-rust-check.sh --os linux test clone_markat this head (step c030229917d137da27feaf16); result in a comment below.Not run: no Rust build on this VM (rule). No red run of the new test: without the fix
marker()does not exist, so that run is a compile failure.