←
TRCKR-389
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