Skip to content

Move managed repositories from cache to persistent storage (OR-230) - #315

Merged
sox8502 merged 5 commits into
mainfrom
daniel/or-230-persistent-storage
Sep 12, 2026
Merged

Move managed repositories from cache to persistent storage (OR-230)#315
sox8502 merged 5 commits into
mainfrom
daniel/or-230-persistent-storage

Conversation

@sox8502

@sox8502 sox8502 commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

Managed repositories can contain the only copy of unpublished research, so they now live under <data>/repos and <data>/worktrees rather than the cache.

OR-230 migrates existing folders automatically before repository workers start. It uses the existing lifecycle lock, rename or verified cross-filesystem copy, and repairs SQLite/Git references and native OpenCode directories without a completion marker, migration history, or success notice. Completion is rechecked before copied originals are removed; later launches only inspect existing metadata for interrupted-move recovery. Conflicts preserve both copies and report an error. Existing chats and edited demos survive; later data-directory moves reuse the repair helper.

Bumps the CLI from 0.2.0 to 0.2.1; merging triggers release v0.2.1. The version-only follow-up skips another code review at the user’s request.

  • Rust fmt, clippy, locked build and tests: 814 passed, 2 ignored

  • UI build/typecheck, 161 UI tests, 9 dev-slot tests, localization/style checks

  • Four independent Claude Opus reviewers: no blockers

  • Rename/copy, interrupted references, corrupted/partial copies, conflicts, symlinked paths, and data-move rollback regressions

  • Real cross-filesystem migration to a temporary HFS+ volume; second launch performs no repairs

  • Isolated app migration, lifecycle-lock contention, Claude/Codex/OpenCode session continuity and actual native tool working directory, and demo/artifact preservation

  • Debug/release source builds retain development telemetry policy

  • Linux and Windows CI on final version-bump commit 18220b8

  • Final isolated migration: 4,076 files/chat rows preserved; five later CLI launches in 20–24 ms, zero Git subprocesses/stderr, 12 Git links unchanged

  • CLI conflicts preserve both locations without opening GUI alerts; macOS alert syntax and argv handling checked without displaying it

  • Official release download/install and GUI error-display verification

  • Local isolated UI smoke test: migrated project and six chats visible; three harness histories, files, artifacts, and experiment details open; no migration notice

@sox8502
sox8502 marked this pull request as draft September 12, 2026 03:43
@sox8502
sox8502 marked this pull request as ready for review September 12, 2026 04:01
@sox8502
sox8502 merged commit cf4baa7 into main Sep 12, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant