Sigh.
Yeah I dunno what's up, but the criteria for buying a shirt that I explicitly set up for this purpose, for some reason, seems to give to to specific people despite having never bought a shirt.
For some behind the scenes, it's technically simple logic (the following is example code I just wrote here on the fly to demonstrate):
const user = {
purchases: [
{
id: 123,
item: 2
}
]
};
let purchaseFound = false;
for(var i = 0; i < user.purchases.length; i++) {
if (user.purchases[i].item == 1 || user.purchases[i].item == 2 || user.purchases[i].item == 4 || ) {
purchaseFound = true;
break;
}
}
if (purchaseFound) {
awardBauble();
}
Basically if the user has purchased one of the shirts (IDs in the database are 1, 2, and 4), then award them the Bauble.
It LOOKS like it was giving it to people who were subscribed, SPECIFICALLY under tiers 1, 2, and 4, which leads me to believe that the logic behind this "user has purchased" function is flawed and is checking against both systems somehow. That definitely shouldn't be happening, but I'd not necessarily doubt it.
I'm going to look into it a bit further, but frankly worst case we go back to the stone age and hand them out manually. One way or another people will get this site award, it's just a matter of "can I make this easier on myself for the long run?".