-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Labels
enhancementNew feature or requestNew feature or request
Milestone
Description
Overview
Add --incremental flag to sync only new/changed data instead of creating duplicates on every sync.
Current Behavior
- Every sync creates new CloudKit records
- No detection of existing records
- Results in duplicate data after multiple syncs
Proposed Enhancement
Features
--incrementalflag for sync command- Last sync timestamp tracking (stored locally)
- Query existing CloudKit records before sync
- Compare local data with CloudKit data
- Only upload new/changed records
Implementation Steps
- Add timestamp storage (.bushel-last-sync or similar)
- Implement CloudKit query for existing records
- Add comparison logic (by version+build number)
- Filter out unchanged records before batch upload
- Update timestamp after successful sync
Benefits
- Reduces unnecessary CloudKit operations
- Prevents duplicate records
- Faster sync times after initial sync
- More production-ready workflow
Example Usage
# First sync - uploads everything
bushel-images sync
# Subsequent syncs - only new data
bushel-images sync --incrementalNotes
- This is mentioned in README limitations section
- Would significantly improve user experience
- Important for production usage
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request