If your project tracks pending items in source code with TODO
comments, then you have to allow it.
The fact that the presence of a TODO
comment in the pull request is bugging you should tell you that tracking pending items in source code is a bad idea. Things tend to get lost or ignored that way. Now, if you're talking about a pull request to a "working fork", then the situation is different. A "working fork" is just that -- a work in-progress. But a fork like that doesn't usually require a pull request. The "House Rules" suggested here are for pull requests for the master branch.
House Rule #1 - All commits to master should be ready for testing, since master is built daily after any check-ins. Those commits should also include any additional tests required.
If the TODO
comment is there because the code isn't finished, or the tests aren't finished, or the code is in any way not ready for testing, then that code belongs in a local commit, not a pull request. Call me when it's ready.
House Rule #2 - All information regarding open issues is stored in the issue tracker. All of it. Notes, scribbles, hunches, whatever.
If the TODO
comment pertains to an open issue, and isn't an actual fix for that issue, then that information belongs in the issue tracker. That way, before an issue is closed, all of the information can be reviewed and verified, if needed, to make sure the issue is actually resolved.
House Rule #3 - All information regarding pending project tasks belongs in the priority queue (or whatever your system's name for that is).
For clarification, a pending project task is something that needs to be done in the project that has a set priority, whether it be a defect that was discovered before it generated an issue ticket, or the implementation of a specific design requirement, or one of that requirement's necessary components.
If the TODO
comment is there to say that the new code will impact a pending task, or to point out something else in the codebase that needs looked at which was discovered when implementing the new code, then that information belongs in the priority queue, either on the existing task or as a new one.
House Rule #4 - Suggestions belong in the Idea Box (or whatever).
If the TODO
comment is suggesting a change in the design or implementation of the software, then that information belongs in the project's idea box, or "vNext", or "Design Notes", or whatever you have for that sort of thing.
House Rule #5 - TODO
comments are not allowed in source code. PERIOD.
If you stick to this rule, then you won't have to worry about anyone following up on anything.