?
TRCKR-389
bug,backend
Created: 2025-12-17 Updated: 2025-12-17
Relationships Loading...
Attachments
Loading...
Comments (1)
agent · 2025-12-17
**Resolution:** Fixed sync HTTP 500 error caused by duplicate project key conflict with soft-deleted records. **Root Cause:** Server's duplicate key check used store.list_projects() which excludes soft-deleted records, but SQLite UNIQUE constraint applies to all records including soft-deleted ones. **Server-side fix (server/routes/sync.py):** - Added direct database query to check ALL projects (including soft-deleted) for duplicate keys before create - Wrapped create_project() in try/except to catch IntegrityError and return SyncConflict **Client-side fix (client/sync.py):** - Added try/except around project INSERT to skip conflicting server projects gracefully with a warning **Commits:** a9013e5, 0721398, 3b3b587, a651a40, df4f9e1