Both syntaxes are equally valid. The first says that guess is a u32 and lets inference figure out which type, T, to use in the str::parse() method, while the second tells the compiler that we're using u32 with str::parse() and it then has enough information to infer guess is a u32.
I personally find let guess: u32 = ... to be cleaner than using turbofish (parse::<u32>()) to tell the compiler which type to use. The extra angle brackets and :: can sometimes add unnecessary visual noise, which is distracting and may confuse people who are less familiar with Rust.
To the best of my knowledge there isn't an official style guide, per-se. Conventions and best practices evolve over time, so I'm guessing they chose to step back and wait for these things to emerge organically. Maintaining a style guide is also a lot of work and the Rust project has finite resources.
The closest is probably The API Guidelines, but that focuses more on how to design your code and write packages, not the nitty-gritty details of what syntax to use.
It's changed a lot since it was actually a style guide, but I believe the current document is this "Rust Style Guide" and related markdown files in the fmt-rfcs repository. Everywhere that used to host the style guide links back here - though this current "Rust Style Guide" does not actually document any style outside of formatting guidelines. It makes no comment on explicit generics vs. implicit.