Whatever clang-format and clang-tidy says! Seriously, using automated tools just takes away all of the bikeshedding revolving this issue.
clang-tidy does some deeper inspection and can be used to flag things that are "bad practice", not just "bad formatting". There's a big list of checks here:
https://clang.llvm.org/extra/clang-tidy/checks/list.html
At a minimum, I like to enable all the `bugprone-*` tidy rules, they just seem sensible to turn on.
e.g. https://clang.llvm.org/extra/clang-tidy/checks/bugprone-stri...
You're able to run `clang-tidy -fix` to automate fixing of many of the things it will flag.