The issue here is, to some extent, not solve but how much simplification
should be used automatically by any command (including solve) in
processing. One can try any or all of a substantial number of
simplification programs, including ratsimp, fullratsimp, trigsimp,
exponentialize, factor .... at every juncture, including "is", "if",
"solve" ...
or
expect that the user will occasionally make a choice of some
transformation before calling the command.
Solve is perhaps unusual in that it may eventually conclude something
like "nope, I couldn't do that" and could then try some extra tools.
But just factoring the input to solve is probably NOT a good idea, given
the potential expense of factoring when it is pointless.
RJF