bartervg / barter.vg

Track and hold discussion on Barter.vg bugs, enhancements, and other issues
https://barter.vg
MIT License
20 stars 4 forks source link

Plus One and perhaps other tagging / category info disappears from items #231

Closed Luckz closed 3 years ago

Luckz commented 3 years ago

Describe the bug

Some games lose their plus one status all the time or some of the time

Steps to reproduce the bug

  1. wait patiently
  2. ???
  3. plus one gone

Expected behavior

plus one stays

Example

https://barter.vg/i/105158/ https://barter.vg/i/35547/ (currently fixed by hand) https://barter.vg/i/103110/ ...

Notes

The Discord feed channels are one way to observe this happening "live".

bartervg commented 3 years ago

This was due to inconsistencies how the Barter database handled the is_free attribute. The default value is 0 and it is changed to the unixtime when the web API reports that is_free is true. However, there is another script (steam_prices.php line 179) that rechecks if the is_free, e.g. free weekend, and that changes is_free to -1 if is not free.

The plus one script checked if is_free is equal to 0, missing items where is_free is -1, thus removing the Steam plus one tag for thousands of games.

There is a good case that is_free should be true/false or NULL/non-NULL. However, the fix was to check is_free <= 0. This added 2606 Steam plus one games and brought the total to 26708.

Changes to Steam plus one can be monitored in #plus1 and #plus0 Discord channels for those that have the moreinfo role.

bartervg commented 3 years ago

[IDK if we have tools and configs and crapware like advert app IDs tagged as +1. Investigate? We also have playtests tagged as SteamPlus1, and withholding the conversation that they should be excised from Barter altogether, they definitely don't +1 anything, or do they?]

234

Informal results of preliminary investigation: https://barter.vg/search?q=playtest Playtests are classified as Game based on the web API, but SteamDB (and likely Valve) classifies as Beta. There was the question of how these appear in the database (an undocumented long-term upgrade issue). To help with this mini-investigation, I made the various sync types visible in the library column: ↷c community section library sync ↷a API library sync * custom sync Û userdata sync The first two sync types will automatically add any appID that they encounter. A spot check of Playtests indicates that all of them appear in the community section library and therefore will continue to be automatically added to the database.

A less-than-precise fix would be to tag all * Playtest items as Steam plus zero.

tools and configs and crapware like advert app IDs tagged as +1

These items should either be classified correctly or as Unknown and therefore not have Steam plus one tags.