http://testanything.org/wiki/index.php/TAP_version_13_specification#TODO_tests the spec says:
If the directive starts with # TODO, the test is counted as a todo test, and the text after TODO is the explanation.
not ok 13 # TODO bend space and time
Note that if the TODO has an explanation it must be separated from TODO by a space.
These tests represent a feature to be implemented or a bug to be fixed and act as something of an executable "things to do" list. They are not expected to succeed. Should a todo test point begin succeeding, the harness should report it as a bonus. This indicates that whatever you were supposed to do has been done and you should promote this to a normal test point.
AFAICT the TAP plugin doesn't seem to take care of the TODO directive accordingly though, therefore marking test runs as failures even though they should be fine.