It seems that when I update the trivia text, the old text (that I'm trying to replace) is saved, and returned in random when playing the map, because the endpoint saves a history of my changes.
If I update the trivia text, I can see that the https://www.geoguessr.com/api/v4/pano-context/map/xxx/pano/xxx/by-user endpoint contain an array of my changes, including the old text that I'm, trying to replace.
So when the answer is given on a map, the https://www.geoguessr.com/api/v4/pano-context/map/xxx/pano/xxx?gameType=standard&gameToken=xxx&context=single_player endpoint is called, with the trivia text. This endpoint contain a "contextId" value that is randomly selected. And that "contextId" corresponds to one of the trivia texts. The "contextId" changes at random, so sometimes my old text is shown to the player.
Why do you save a history of my trivia texts? And if you really want to have a history, why don't you always present the latest trivia? It's annoying to see my old spelling mistakes popping up in my map.
Expected behavior: Always show the latest trivia text.
EDIT: I think that I know what's happening: If you have added a location, write some trivia, then save, it saves 1 trivia. If you then update the location by moving the camera, fix the trivia, and save, then trivia 1 and trivia 2 is saved in an array. This makes no sense, as the old camera pano is gone, and so should the trivia text?