I actually don't think that structure is better. I consider the most important goal of a commit message to communicate the effect of the change as quickly as possible. I don't think a structure of Error, Result of Investigation, Actual Problem, Solution achieves that.
It's also why I don't think PR templates are generally a good idea except for projects with lots of drive-by contributors. Changes vary so much that a template is going to create noise with so many fields users have to fill out with "N/A" and for some changes, the most important detail of the change won't necessarily be the first field in the template.