Files
oikos/PROGRESS.md
T
Ulas Kalayci 7bdf88f94c docs: add progress tracker for CardDAV implementation
Task #1 completed, Task #2 needs 4 test interdependency fixes.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-04 12:08:38 +02:00

2.4 KiB

CardDAV Contacts Implementation - Fortschritt

Stand: 2026-05-04, Session pausiert bei ~82k Tokens

Abgeschlossene Tasks

Task #1: Implement server/services/cardav-sync.js

  • Status: COMPLETED
  • Commits:
    • 689b479: Initial implementation (850 lines service + 46 tests)
    • c4b8b76: Critical fixes (Transaction handling, N+1 query optimization)
  • Reviews:
    • Spec Review: PASSED
    • Code Quality: APPROVED

🔄 Task #2: Add tests for cardav-sync service

  • Status: IN PROGRESS (needs final fix)
  • Commits:
    • 96b4f43: Added 9 new tests (55 total)
    • a38c2c8: Fixed test interdependencies and removed duplicate suite (54 tests)
  • Reviews:
    • Spec Review: PASSED
    • Code Quality: NEEDS FIX - 4 verbleibende interdependente Tests

VERBLEIBENDE ARBEIT für Task #2: 4 Tests in "Contact Merge Logic (DB)" suite sind noch interdependent:

  • Test 2 (line 968): "should add multiple phones to contact" - depends on Alice Smith
  • Test 3 (line 987): "should add multiple emails to contact" - depends on Alice Smith
  • Test 4 (line 1006): "should add multiple addresses to contact" - depends on Alice Smith
  • Test 5 (line 1022): "should preserve primary entries" - depends on Alice Smith

Fix erforderlich: Jeder Test muss seinen eigenen Contact erstellen, oder Suite-level before hook nutzen.

Ausstehende Tasks (3-10)

  • Task #3: Implement CardDAV management API routes
  • Task #4: Extend contacts API routes for multiple values
  • Task #5: Add API route tests
  • Task #6: Extend Settings UI with Contacts Sync section
  • Task #7: Add source badges to contact list
  • Task #8: Extend contact modal with new fields and multiple values
  • Task #9: Add UI interaction tests
  • Task #10: Integrate CardDAV sync into cron job

Nächste Schritte beim Fortsetzen

  1. Task #2 abschließen: Verbleibende 4 interdependente Tests fixen
  2. Code Quality Re-Review für Task #2
  3. Task #2 als completed markieren
  4. Mit Task #3 (API Routes) fortfahren

Wichtige Dateien

  • Design Doc: docs/designs/2026-05-04-cardav-contacts-design.md
  • Service: server/services/cardav-sync.js (849 lines)
  • Tests: test-carddav.js (54 tests, 4 need fixing)
  • Migration: server/db.js (Migration 30)

Git Status

Branch: feature/cardav-contacts Basis: main (commit 6cc7267) Aktuell: commit a38c2c8

Uncommitted changes: keine (außer dieser PROGRESS.md)