Skip to content

Add mirror sync, snapshot helpers and target types - #3

Merged
yakupyigit merged 4 commits into
mainfrom
ccr-851d2de1-t8kvu1
Oct 14, 2026
Merged

yakupyigit merged 4 commits into
mainfrom
ccr-851d2de1-t8kvu1

Conversation

@yakupyigit

Copy link
Copy Markdown
Contributor
  • exec accepts an AbortSignal; add time, tool-info and git runner helpers
  • core/mirror: bare mirror with heads/tags refspecs, no prune, wiki not-found handling
  • core/snapshot: ref listing, ref hash, bundle creation and manifest
  • integration tests against temporary bare repositories

Co-Authored-By: Claude Sonnet 5.5 [email protected]
Claude-Session: https://claude.ai/code/session_01NQyYvckeK2ZwbfoVpiF56R

- exec accepts an AbortSignal; add time, tool-info and git runner helpers
- core/mirror: bare mirror with heads/tags refspecs, no prune, wiki not-found handling
- core/snapshot: ref listing, ref hash, bundle creation and manifest
- integration tests against temporary bare repositories

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01NQyYvckeK2ZwbfoVpiF56R
- targets/local writes via .partial + rename with the manifest last, lists,
  deletes and cleans up interrupted snapshots
- core/retention resolves keep (target > global) and selects expired stamps
- core/lock holds a PID lock in the cache dir and takes over dead PIDs

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01NQyYvckeK2ZwbfoVpiF56R
…mmary

- core/run orchestrates mirror, ref comparison, bundle, upload and retention per
  repository and wiki, with retries (1s, 5s), per-target results and a summary
- commands/backup wires config, targets, git check, run lock, discovery,
  SIGINT/SIGTERM handling, --json output and exit codes
- util/async adds withRetry and runPool
- integration tests cover broken repos, unchanged runs, keep, restore, wiki,
  lock, abort, retry and global git config isolation

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01NQyYvckeK2ZwbfoVpiF56R
Document the backup flow, Target interface and README usage as implemented;
add decisions K-032 to K-034 and notes for phases 3 and 4.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01NQyYvckeK2ZwbfoVpiF56R
@yakupyigit
yakupyigit merged commit e5d2917 into main Oct 14, 2026
4 checks passed
@yakupyigit
yakupyigit deleted the ccr-851d2de1-t8kvu1 branch November 4, 2026 02:45
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.

2 participants