Server Side Data Corruption
I have reported this issue before, and came across it again with movie:
This movie on the Trakt web site did not show watched or collected. I know this to be wrong. I checked my local media data (in tinyMediaManager) and sure enough, it is both collected and watched. It also shows that it has already synced to Trakt with this data. This is proven in 2 ways. First, I do not manually mark anything watched in tMM. I mark when watched on Trakt and sync that to tMM. Second, it has the Trakt ID logged, which means that it has synced as that is how the Trakt ID gets populated. As a third method of verification, I have prior data backups from Trakt indicating that it was in fact collected and watched in Trakt in the past.
What steps are taken for data control and integrity? I have personally experienced two conditions where this issue could be happening. First is when there is a merge/deletion of a duplicate. I assume there is a merge process, or at least I hope so vs simply a removal of the duplicate. In this process, is there a pointer of sorts left in the system to where the former Trakt ID will point to the new ID? Second, Trakt has connection problems somewhat often. This happens usually around 06:00 UTC, typically +/- 2 hours. During this time, the site and service are up and down and not stable for a relatively short period of time, maybe 30 minutes if I had to guess. During this time, changes made tend to disappear and cause corrupt data. Corrupt data example is that a movie might appear on an list and it cannot be removed from it (this example has happened to me a few times). IF this is possibly due to maintenance on the site, server(s) or database, is anything done to prevent data writes during such times? Are there any checks to confirm data writes? For example, a write is sent to populate A, the database writes A and sends a reply that A was in fact written with success. Is there a transaction history that a user can review for changes under their account?
I do not know anything about Trakt on the backend, its database or programming. Due to this, I cannot really point to a problem and report it to be fixed. I can only identify that there is an issue and use my data management experience combined with my user experience on Trakt to identify possible problem areas. All I can be sure of is that there is with certainty an issue with data on the server side somewhere and it appears to be rare yet does happen. As a user, there is only so much I can do as access is limited and there is no way to know when data corrections happen exactly what code is used to execute the DB transactions. I hope I have provided enough where someone can review appropriately.
As mentioned prior, this was there before, now it is not. I understand the matching process, and if there was an issue, it would not have matched up prior. When viewing on the site, both were set, but when I submitted this both were unset. I started keeping a copy of the data on Trakt for this exact reason. I can prove that it was there.
On a side note, in tinyMediaManager, I have the Trakt IDs stored for each movie along with the IMDB and TMDB. If there is a mismatch, I will see it right away. Once a movie is added, I sync to Trakt. If there is a mismatch of IDs or a match cannot be found, I would know at that time.
No, that only resets your client side data. It sounds like the movie isn't watched or collected in your Trakt profile. My next guess is your app isn't able to find a match and may need to check if the IDs all exist (TMDB, IMDB, etc) so Trakt can find a match correctly.
For this specific issue, I checked for browser cache as the issue. I was able to verify that this movie was not showing as watched or collected on different browsers and devices. Device 1 is laptop running Ubuntu 18.04 with browsers of Chrome, Opera, Firefox and Brave. Device 2 is Android with Chrome, Brave and DuckDuckGo.
Does the function you shared here do anything server side? I believe I can rule out client side.
This sounds like your cached browser data needs to be refreshed. You can do that at https://Trakt.tv/settings/data and it should restore any missing info (as long as it resists in your account of course).