Contacts Feature - Integration Summary
Last updated: 2026-03-23
Fully Integrated
- ✅ Contact CRUD (create, read, update, delete)
- ✅ Multi-value emails with labels (Work, Personal, Other)
- ✅ Multi-value phones with labels (Mobile, Work, Home, Other)
- ✅ Company name as free text (not auto-populated from user's company)
- ✅ Contact types (Client, Partner, Supplier, etc.)
- ✅ Contact notes with Author from GraphQL (+ client-side fallback)
- ✅ External sharing with tokens
- ✅ Merge contacts
- ✅ CSV bulk import
- ✅ Collaboration & partnership status fields
- ✅ Auto-save on Enter, dismiss on Escape
- ✅ Auto-save on removing additional entries
Remaining Low-Priority Backend Issues
importContactsreturnserrors: nullinstead of[](frontend normalizes)COMPANY_NAMEsort uses wrong field (frontend applies client-side sort)- Mutation argument naming inconsistent (frontend maps manually)
Full Documentation
See: DOCS/CONTACTS_BACKEND_REQUIREMENTS.md