The reason most people tell me they use todos is, "you can't do everything up front."
I agree, but I hate TODOs. They're the worst form of keeping track of technical debt.
Just open a ticket! I like to have a tag/label called "debt" that I put these "TODO, bad implementation" type of problems under.
That way at least it's tracked.