fix: Make workspace checkout atomic #9

Manually merged
day01 merged 1 commits from fix/0.6-atomic-workspace-checkout into develop 2026-08-30 20:54:06 +00:00
Owner

Summary

  • clone fresh workspaces into a sibling staging directory
  • publish the checkout only after every repository and workspace state succeeds
  • preserve empty targets and remove incomplete staging data on failure

Verification

  • cargo fmt --check
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo test --all-targets --all-features
  • dev E2E: missing branch leaves target empty
  • dev E2E: successful checkout publishes two repositories and .syn state
  • dev E2E: dirty repository is rejected and preserved
## Summary - clone fresh workspaces into a sibling staging directory - publish the checkout only after every repository and workspace state succeeds - preserve empty targets and remove incomplete staging data on failure ## Verification - cargo fmt --check - cargo clippy --all-targets --all-features -- -D warnings - cargo test --all-targets --all-features - dev E2E: missing branch leaves target empty - dev E2E: successful checkout publishes two repositories and .syn state - dev E2E: dirty repository is rejected and preserved
day01 added 1 commit 2026-08-30 20:53:39 +00:00
day01 manually merged commit 7473d31780 into develop 2026-08-30 20:54:05 +00:00
day01 deleted branch fix/0.6-atomic-workspace-checkout 2026-08-30 20:54:06 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: syncode/cli#9