This is working as expected through step three the way you describe it. I just stepped through this process in Microsoft Project and it behaves exactly the same way. Given the absence of an Undo function in Daptiv, the way to set things back to the correct outline level is select all of the children task (shift-click to select multiple contiguous tasks) and outdent them to match the parent task. You can use the same function to outdent multiple tasks as needed.
The fourth step, where you tried to indent at row 3 looks more like an outdent function: Line 3 was moved up one outline level, so it is now a peer with line 2. Since it had no child tasks prior to this, it appears to be correct. Indenting row 3 wouldn't have done anything since it was already at the lowest possible outline level in the parent/child scenario here. Again, Microsoft Project behaves the same way. However, if you indeed indented line 3, that would not be functioning correctly.
In any case, once you have the outline back in shape, the only Tasks that would need to be corrected would be Tasks that had been inadvertently made a parent. Tasks that didn't change their relative outline levels (every Task below line 3 in this scenario), wouldn't have been recalculated by these kinds of outline revisions.
Hopefully that clears things up a little. As I mentioned previously, there is room for improvement in the Gantt chart UI (particularly an Undo feature), but things appear to be functioning as expected in this scenario.
Again, when the application seems to be misbehaving, the Daptiv support team should be the first point of contact. They are able to respond more quickly and appropriately and they are able to escalate issues as needed. The Community is a great place to discuss these kinds of issues as well, but may take much longer to arrive at the appropriate conclusions.