There are multiple ways to define success/failure. The tool already returns error codes for certain failures such as parsing, talking to the node, etc (see https://github.com/kadena-io/kda-tool/blob/master/src/Commands/Local.hs#L49). To really assess a transaction's blockchain success status you really need to dig into the returned output in more detail.
How to handle the case of multiple transactions. I've created PR #22 that does the simplest thing. But there are plenty of more involved situations where you'll have to parse the JSON output and make decision appropriate to each unique situation.
I've just started to use the kda-tool to make automatic deployment:
https://github.com/CryptoPascal31/pact-util-lib
And I have some suggestions.
kda-tool should return a specific exit code (different from 0) for the local, send, and poll commands, when one of the transactions has failed.
This would help a lot to automatize things (especially in Makefile) to detect when something goes wrong in the workflow.