?
TRCKR-172
sync refactoring
Created: 2025-12-09 Updated: 2025-12-16
Relationships Loading...
Attachments
Loading...
Comments (1)
agent · 2025-12-09
Completed removal of sync_on_change setting. ## Changes Made ### Core Files - **client/schema.py:410** - Removed sync_on_change column from SYNC_STATE_TABLE definition - **client/sync.py:137-171** - Removed sync_on_change parameter from configure() method - **client/sync.py:173-176** - Simplified should_sync_on_change() to just check if server_url is configured (returns status.is_configured) - **trckr.py:686-691** - Removed sync_on_change parameter from engine.configure() call in sync setup command ### Test Files - **tests/test_live_server.py:113-117** - Removed sync_on_change parameter from fixture - **tests/integration/conftest.py:90-95, 104-109, 239-243** - Removed sync_on_change from all SyncEngine.configure() calls - **tests/integration/test_sync_race_conditions.py:35** - Updated docstring to reflect new behavior - **tests/integration/test_sync_race_conditions.py:346-350** - Removed sync_on_change parameter ## Behavior Changes - **Before**: Users could configure a sync server but disable sync-on-change, requiring manual sync - **After**: If a sync server is configured, changes are always synced immediately after local operations ## Migration Compatibility - Existing databases with sync_on_change column will continue to work - SQLite allows reading rows with extra columns that aren't referenced in queries - The column can remain in existing databases without causing issues ## Verification - Tested that should_sync_on_change() returns False when no server configured - Tested that should_sync_on_change() returns True when server is configured - All changes committed and pushed to TRCKR-172 branch - Branch merged to master and pushed to remote