There's a huge difference between a Game Design Document (GDD) and a really good Game Design Document. A really good GDD goes into the depth about mechanics and what needs to happen at specific areas. It doesn't focus on the technical details like how it's going to jump, that's what a Technical Design Document is for.
The GDD is meant to explain the game's design and how it might possibly affect other mechanics. An example of this is when I explained the rules of the players and how they are restricted to the map's boundaries and area created by the player's trails.
Players are confined in the map’s boundaries which then promotes the play of driving recklessly, purposely cutting off other players to cause them to collide with the trail. Players that come into contact with a trail explode immediately, even if the trail is their own.
This is quite vague since it doesn't explain if there's a time limit, if the game has rounds, player counts, if players know their own colour of not to differentiate the trail they create, or if players can pick their own colour.
Providing these details would have explained more about how they game actually operates and what players interact with rather than leaving the above missing details up to whoever is implementing it.
So this is something to learn from at least for me, since I rarely write any documentation of my own except from explanations of what a system/code block is meant to do.