Area tags not listed as expected on fresh copy after encrypted sync setup

I’ve encountered an issue, which I’m currently able to replicate, where after starting up Everdo on new computer and setting up encrypted sync to get my data, my Area tags aren’t what I expected.
It showed me 2 of the 4 existing areas from my phone, and after restart it showed the two areas that comes “pre-bundled” (Home & Work) on top of the 2 existing ones.

After doing a clean pull it would then show me the correct area tags, but the Home and Work tags would still stay there and get synced, which I then had to remove afterwards (from both devices it seems)

To note, this was done on Windows 10 desktop (1.5.3) and Android (1.1-7, had older version when starting out but updated during this process)

To start out, I had 4 different areas on my mobile phone, which was let’s say

  • @computer
  • @home
  • @parents
  • @work

I had installed Everdo on fresh windows installation (and was able to replicate after deleting everdo folder under Roaming), and set it up doing the following

  1. Deleted tutorial via button in top-right (note, after doing this, both Home and Work area tags stayed behind)
  2. Added product key
  3. Setup sync using the button in top-right, using existing account for encrypted sync and follow through steps until prompted to close.

At this point, when checking on my tags, it would only show 2 of the 4 expected ones, which was

  • @home
  • @parents

If I tried to view a task which had the area tags that were missing, the missing tags would not appear

After closing the windows program and starting back up, the tags were as following

  • @home
  • @parents
  • Home
  • Work

I then finally tried doing a Clean Pull, which after this point, the area tags looked as expected, where it only showed the 4 that was on my phone.

However, after shutting down and restarting, the two “tutorial” areas appeared again.

After writing this up, I noticed that I’d gotten Home and Work area tags on the phone as well, after having deleted it on the desktop (guessing it got synced at some point before removal, but trying to sync again on phone they didn’t disappear).
After updating the phone version (don’t recall previous version), I was able to delete the tags without crashing the application.
But, they seemed to re-appear as well after restarting the mobile app, so I tried doing a clean sync, which then gave the same issue with only showing the 2 existing tags.

All in all to “fix this”, I ended up having to do

  • Clean pull on desktop
  • Restart application to show my wanted tags & 2 extra unwanted
  • Delete the unwanted tags
  • Force push changes to encrypted sync
  • Clean pull on mobile device

Thank you for explaining the problem so thoroughly. It helped me find out exactly what the cause is.

Ultimately the issue is caused by tutorial items having fixed pre-generated IDs, that is, every instance of the desktop app that runs for the first time will have the same tutorial items created with the same IDs.

This was good for syncing purposes since deleting the tutorial items on one device would ensure that the corresponding items will get removed on other devices (since the IDs are the same). If IDs were random (as they are for regular entities) then there would be no way to link the tutorial items across devices and sync changes to them.

However this design led to cases of data loss where for example you would delete the tutorial items manually and then proceed to use the Work/Home tags for your own needs. Then one day when setting up another device, you click the Delete Tutorial buttons and suddenly your Work/Home tags are gone from everywhere because the are considered tutorial entities.

So the code was changed so that “Delete Tutorial” does not touch the area tags. This led to most of the present issues which you are describing. Particularly, when Work/Home get created on a new device automatically, the sync service already has some history about them (they might have been deleted before) so it gets confused and doesn’t sync these tags properly.

When you delete Work/Home tags manually and do a force push, you wipe the existing ESS data completely, so the previous history of Work/Home doesn’t interfere anymore.

I will think about what to do with this issue.

This is the part that still confuses me. Are you sure that some tags simply went missing during initial sync setup?
I was able to reproduce all of the issues with Work/Home that you have described, but I was not able to reproduce the missing tags issue.

Heya

Appreciate the detailed description about the cause of the issue, can understand why you’d want to leave the tags alone in the case described, as losing the tags permanently wouldn’t be a good solution.

It is unfortunate, but I can tell that the most common scenario for me personally, is setting up Everdo on a new OS (which might happen somewhat frequently at times), and in all those cases I simply just want to get down the latest version from the encrypted sync without setting up anything locally.
The tutorial is then deleted to just avoid getting those added as well by accident.

Not knowing the underlying code for how the setup works, first ideas that comes to mind are

  1. Add a “Clean sync” option when setting up sync, so that it will clear out everything locally (including area tags) before finishing the setup
  2. When setting up sync, check for any existing items that use the tutorial areas, and in case there aren’t, have them deleted (but in a way where it’s not “stored” to be propagated once sync has completed setting up, in case user did use the same tags on what’s getting pulled down)

Now, as for the “missing” tags issue. I can’t say for sure if they’re actually missing, or something with the post-sync setup causes them to be ignored or something.
Considering that it seems the “missing” tags aren’t sent back to the server (as a clean sync will fix it), might be just a local issue.

But can show screenshots of how it looks like during the process.

  1. Showcase of area tags with dummy tasks having them individually set up, which is synced

  2. Cleared folder under Roaming, deleted tutorial (excluding areas, but they don’t tend to show until after restarting) and added license

  3. How it looks like after setting up sync. Two areas are “missing”, neither in dropdown or on actual tasks. (Tried this with removing tutorial areas before sync, but happened there as well)

  4. “Fixed” issue by doing clean pull and manually removing tutorial area (if not done previously)

Please PM me your ESS account email. Maybe I can get some clues from the logs about the missing tags.

Regarding the treatment of tutorial items, I think its best to just let the automatically generated Work/Home tags have random IDs, so they are easy to delete manually as normal tags.