Adding to this:
Even if we disable the rule that requires all tasks to be completed before resolving an incident, there is another rule that deals with completing the last open task. It prompts the user for whether they want to resolve the ticket or not. If they say yes, it prompts for the cause and resolution. There is also a rule that prompts for the amount of time spent when you complete a task.
In order to resolve from Problem, we'd need to have it complete all child tasks (bypassing those other rules), then enter the cause and resolution and set status to Resolved.
To me, this is a design flaw because you can't really use the resolve from Problem actions unless you disable the other rules, all of which are required in normal incident management. So, it's a "one or the other, not both" situation.
I almost had this working in my Dev environment, but it is 2015.2.1, and the same configuration done in a 2015.1.1 environment don't work. Basically, I added a Status type to the list for Tasks, then edited 10 different business rules and two forms, so that the system would recognize that new status as equaling "100% complete" for a task.
It appears that 2015.1.1 processes the rules in a different order, so it didn't work there. HEAT Support is going to add this as a development request, but I'd sure like to hear if anyone has already found a solution.
I believe I've figured this out. I posted a document detailing what I did, titled "Resolve Incidents from Problem". Would be glad to hear any feedback on it.