Yes, it's present for multiple accounts, and doesn't seem to be limited to a single game per archive. ![]()
Once the bug is identified and fixed, if possible I'd like to know when it was introduced, as it makes any cached data I have – and I only fetch new archives by default – should be tossed. Not a big deal. More importantly, for some statistical analyses the data is wrong.
The bug includes live games as well as daily games.
I process archives generally in reverse chronological order, thus no duplicates yet for 2018-05 but when going back to 2018-04 some are seen.
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783198584 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783189513 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783184561 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783173421 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783156186 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783150107 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783146326 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783134778 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783124019 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783117882 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783052121 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782999243 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782992186 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782663570 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782654645 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782639027 seen before (King_Rotund-2018-05.pgn)
King_Rotund-2018-03.pgn: https://www.chess.com/live/game/2717208119 seen before (King_Rotund-2018-04.pgn)
...
An interesting case:
https://api.chess.com/pub/player/integrator/games/archives
{"archives":["https://api.chess.com/pub/player/integrator/games/2008/05","https://api.chess.com/pub/player/integrator/games/2008/12","https://api.chess.com/pub/player/integrator/games/2009/07","https://api.chess.com/pub/player/integrator/games/2009/08"," ...]}https://api.chess.com/pub/player/integrator/games/2009/07
{"games":[...{"url":"https://www.chess.com/daily/game/23594327","pgn":"[Event \"The truth shall set u free! - Board 1\"]\n[Site \"Chess.com\"]\n[Date \"2009.07.10\"]\n[Round \"-\"]\n[White \"integrator\"]\n[Black \"madz123456\"]\n[Result \"1-0\"]\n[WhiteElo \"2324\"]\n[BlackElo \"2078\"]\n[TimeControl \"1/259200\"]\n[Termination \"integrator won on time\"]\n[StartTime \"19:32:57\"]\n[EndDate \"2009.08.02\"]\n[EndTime \"06:02:08\"]\n[Link \"https://www.chess.com/daily/game/23594327\"]\n\n1. e4 e5 2. f4 exf4 3. Bc4 Nf6 4. Nc3 c6 5. d4 d5 6. exd5 cxd5 7. Bb5+ Nc6 8. Bxf4 Bd6 9. Nge2 O-O 10. O-O Be6 11. a3 Ne4 12. Kh1 Be7 13. Nxe4 dxe4 14. c4 a6 15. Bxc6 1-0","time_control":"1/259200","end_time":1249192928,"rated":true,"fen":"r2q1rk1/1p2bppp/p1B1b3/8/2PPpB2/P7/1P2N1PP/R2Q1R1K b - - 1 15","start_time":1247254377,"time_class":"daily","rules":"chess","white":{"rating":2324,"result":"win","@id":"https://api.chess.com/pub/player/integrator","username":"integrator"},"black":{"rating":2078,"result":"timeout","@id":"https://api.chess.com/pub/player/madz123456","username":"madz123456"},"match":"https://api.chess.com/pub/match/10901"}]}https://api.chess.com/pub/player/integrator/games/2009/08
{"games":[{"url":"https://www.chess.com/daily/game/23594327","pgn":"[Event \"The truth shall set u free! - Board 1\"]\n[Site \"Chess.com\"]\n[Date \"2009.07.10\"]\n[Round \"-\"]\n[White \"integrator\"]\n[Black \"madz123456\"]\n[Result \"1-0\"]\n[WhiteElo \"2324\"]\n[BlackElo \"2078\"]\n[TimeControl \"1/259200\"]\n[Termination \"integrator won on time\"]\n[StartTime \"19:32:57\"]\n[EndDate \"2009.08.02\"]\n[EndTime \"06:02:08\"]\n[Link \"https://www.chess.com/daily/game/23594327\"]\n\n1. e4 e5 2. f4 exf4 3. Bc4 Nf6 4. Nc3 c6 5. d4 d5 6. exd5 cxd5 7. Bb5+ Nc6 8. Bxf4 Bd6 9. Nge2 O-O 10. O-O Be6 11. a3 Ne4 12. Kh1 Be7 13. Nxe4 dxe4 14. c4 a6 15. Bxc6 1-0","time_control":"1/259200","end_time":1249192928,"rated":true,"fen":"r2q1rk1/1p2bppp/p1B1b3/8/2PPpB2/P7/1P2N1PP/R2Q1R1K b - - 1 15","start_time":1247254377,"time_class":"daily","rules":"chess","white":{"rating":2324,"result":"win","@id":"https://api.chess.com/pub/player/integrator","username":"integrator"},"black":{"rating":2078,"result":"timeout","@id":"https://api.chess.com/pub/player/madz123456","username":"madz123456"},"match":"https://api.chess.com/pub/match/10901"}]}Same game, is right to be in the August archive but should not be in July as well.
I only noticed this because the player has 8W-0L-0D as his record, and my script picking games out of the archive when told "everything" found nine games. After a little head scratching I dug in and found the extra.
I will add some checking code to my script to make sure it doesn't inadvertently get duplicates (which could happen if I tell it the wrong files, so now that I've thought of it it's a useful enhancement). I will post if I happen across other instances.