Context
Once CI actually started running the test suite (the working-directory: rust fix in #63), the macos-latest leg surfaced pre-existing failures unrelated to that PR's changes. The macOS CI leg is currently advisory (continue-on-error) so it doesn't block merges; this issue tracks fixing it for real.
Symptom
7 of 8 tests in rust/vm-temp/tests/integration_tests.rs fail on macOS (they pass on Linux):
test_concurrent_state_operations
test_mount_filesystem_integration
test_mount_path_edge_cases
test_mount_permission_scenarios
test_mount_source_validation_edge_cases
test_mount_workflow_integration
test_state_file_atomic_operations
(test_mount_*-style names + state-file ops.)
Likely cause
macOS path/filesystem semantics differ from Linux — e.g. /var → /private/var symlink canonicalization, temp-dir layout, and the permission model. These are almost certainly assertions that hard-code Linux path assumptions.
Repro
cargo test -p vm-temp --test integration_tests
on macOS.
Evidence
Failing run (commit d67c747): https://github.com/goobits/vm/actions/runs/28057405127/job/83063072667
Done when
macOS CI passes these tests and the continue-on-error advisory flag can be removed from the macOS matrix leg in .github/workflows/ci.yml.
Context
Once CI actually started running the test suite (the
working-directory: rustfix in #63), the macos-latest leg surfaced pre-existing failures unrelated to that PR's changes. The macOS CI leg is currently advisory (continue-on-error) so it doesn't block merges; this issue tracks fixing it for real.Symptom
7 of 8 tests in
rust/vm-temp/tests/integration_tests.rsfail on macOS (they pass on Linux):test_concurrent_state_operationstest_mount_filesystem_integrationtest_mount_path_edge_casestest_mount_permission_scenariostest_mount_source_validation_edge_casestest_mount_workflow_integrationtest_state_file_atomic_operations(
test_mount_*-style names + state-file ops.)Likely cause
macOS path/filesystem semantics differ from Linux — e.g.
/var→/private/varsymlink canonicalization, temp-dir layout, and the permission model. These are almost certainly assertions that hard-code Linux path assumptions.Repro
on macOS.
Evidence
Failing run (commit
d67c747): https://github.com/goobits/vm/actions/runs/28057405127/job/83063072667Done when
macOS CI passes these tests and the
continue-on-erroradvisory flag can be removed from the macOS matrix leg in.github/workflows/ci.yml.