So I read two primary statements here. 1) Anything unexpected is suspicious. This includes unexpected success.
2) Anything unexpected should be reported back to the author. The first is controversial, and leads to the conclusion that TODO passes should fail. The second is not controversial, but it erroneously leads to the conclusion that TODO passes should fail. That's the only mechanism we currently have for telling the user "hey, something weird happened. Pay attention!" It's also how we normally report stuff back to the author. Also there's only two easily identifiable states for a test: Pass and fail. So what we need is a "pass with caveats" or, as Eric pointed out, some way for the harness to communicate it's results in a machine parsable way. The very beginnings of such a hack was put in for CPAN::Reporter in the "Result" line that is output at the end of the test. Ideally you'd have the harness spitting out its full conclusions... somehow... without cluttering up the human readable output. But maybe "Result: TODO_PASS" is enough. -- Stabbing you in the face for your own good.