If a pawn promotes to a checking piece while also revealing a check, it is a double check? I'm writing a chess engine just for fun, and during the validation of movement generation, I found some positions in Perft Results that differ from what my engine is producing.

As an example, take the below position.

[FEN "r3k2r/p1ppqpb1/bn2pnp1/3PN3/1p2P3/2N2Q1p/PPPBBPPP/R3K2R w KQkq - 0 1"]


I found in the Chess programming wiki, the number of possible positions in depth 5 is 193690690, and my program matches this value.

However, regarding the number of possible double checks, my program found 8 more positions. The Perft Results from the Wiki indicate a total of 2637, while I found 2645.

I don't know what to think. Maybe the Perft Result from the Wiki does not consider positions where a pawn promotes with check whilst revealing a check, aka a discovered check. But there are only 6 moves where a pawn promotion results in a double check (3 positions, where the pawn may promote to queen or rook). Are the positions from Wiki wrong?

If someone wants to look at the positions, they can be found here on Google Drive.
Yes, a double check is when two pieces give check at the same time. It doesn't matter how you got to that position. As to whether there's an error on that wiki, it's probably best to try to ask its author. Maybe they can provide the full list of positions for you to compare.

I can think of two ways of giving double check while promoting. One is where you have say the black king in front of the white pawn, and a white queen or rook behind the pawn, and the pawn promotes with a capture, ending up as a new white queen or rook next to the black king. The other is where say the black king is on the seventh rank, white has a rook or queen on the other side of the pawn, and White promotes to a knight, queen or bishop giving check.