Bug 505329

Summary: Google Contacts editing unsafe in Kontact 25.04.2 — long-standing data loss risk, needs fail-safe priority
Product: [Frameworks and Libraries] Akonadi Reporter: jshand2013
Component: Google ResourceAssignee: kdepim bugs <kdepim-bugs>
Status: REPORTED ---    
Severity: normal CC: carl, dvratil
Priority: NOR    
Version First Reported In: 6.4.2   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description jshand2013 2025-06-08 06:13:58 UTC
## Description

I am reporting that **editing Google Contacts** via Kontact PIM Groupware 25.04.2 and KAddressBook is still **unsafe and unreliable**, risking **data loss**, and this needs to be treated as a **fail-safe priority issue**, not an incremental feature.

This class of bug has existed for *years* (see bugs [#342789](https://bugs.kde.org/show_bug.cgi?id=342789), [#424780](https://bugs.kde.org/show_bug.cgi?id=424780), [#462523](https://bugs.kde.org/show_bug.cgi?id=462523), [#470372](https://bugs.kde.org/show_bug.cgi?id=470372)), and despite ongoing work, the problem remains today.

## Environment

- **KDE Gear version:** 25.04.2  
- **Kontact/KAddressBook:** 25.04.2  
- **akonadi_google_resource:** latest version included in 25.04.2  
- **Google Account:** used for email, calendar, contacts  
- **Distro:** [your distro here — e.g. OpenSUSE Tumbleweed]  
- **Akonadi:** standard config, no manual patching  
- **Network:** direct Google API access, no proxy  

## Steps to reproduce

1. Sync Google Contacts into Kontact using akonadi_google_resource.  
2. Edit an existing contact in KAddressBook.  
3. Save the contact.  
4. Trigger resource sync or restart Kontact.  
5. Observe that:
    - Changes sometimes do not persist.
    - Some fields (phone types, IMs, categories, custom fields) may be lost or corrupted.
    - No error is reported to the user.
    - Data integrity is silently compromised.

## Expected behavior

- Editing a contact must be **fail-safe**:
    - Changes must persist reliably, round-trip tested.
    - If edit cannot be safely mapped → warn the user or block the edit.
    - No silent corruption.
    - Full support for **vCard 4.0** and **Google People API mappings** must be implemented.

## Actual behavior

- Edits frequently fail to persist or corrupt fields.
- No user notification is given.
- Round-trip validation is missing.
- The situation is not safe for business-critical use of Google Contacts.

## Why this matters

- Contacts are **critical user data** shared across devices.
- Current behavior can result in **data loss**, which is unacceptable.
- This issue has existed across **multiple KDE PIM versions**.
- Google’s APIs have changed (People API, vCard 4.0), but akonadi_google_resource and ContactEditor are not yet fully adapted.
- It is time for this to be treated as a **core reliability issue**, not an incremental feature.

## Related work / references

### Bugs
- [#342789](https://bugs.kde.org/show_bug.cgi?id=342789)  
- [#424780](https://bugs.kde.org/show_bug.cgi?id=424780)  
- [#462523](https://bugs.kde.org/show_bug.cgi?id=462523)  
- [#470372](https://bugs.kde.org/show_bug.cgi?id=470372)  
- [#480938](https://bugs.kde.org/show_bug.cgi?id=480938) (tracking bug — please link this report to it)

### Work in progress
- [akonadi_google_resource merge requests](https://invent.kde.org/pim/kdepim-runtime/-/merge_requests?scope=all&state=opened&search=google)  
- [kcontacts merge requests](https://invent.kde.org/pim/kcontacts/-/merge_requests?scope=all&state=opened)  
- [kaddressbook ContactEditor merge requests](https://invent.kde.org/pim/kaddressbook/-/merge_requests?scope=all&state=opened)  

### Developer discussions
- [KDE PIM Matrix room](https://matrix.to/#/#kontact:kde.org)  
- [KDE PIM mailing list](https://mail.kde.org/pipermail/kde-pim/)  

## Request

Please treat this as a **high-priority bug**:

✅ Either make Google Contacts editing fully safe and compatible with modern API/vCard standards.  
✅ Or make Google Contacts read-only until it is safe.  
✅ Ensure full round-trip validation.  
✅ Do not allow silent corruption of user data.  

I am happy to test new versions once fixes are available.

## CC

@carl @montel @dvratil  

**Thank you very much for your work — but this issue requires urgent attention to restore user trust.**

— John Shand, **Shands Advertising**, New Zealand — business user relying on Google Contacts daily
Comment 1 jshand2013 2025-06-08 06:28:41 UTC
i forgot to mention i am using opensuse tumbleweed