First and foremost, this post is more of a personal guideline to myself in order to stop, what I consider to be, a bad habit of mine.
Adding in-code TODOs is something I'm trying to move away from. While it does create an immediately contextualized task list when placed in the surrounding code, the list can only be observed when you open those specific files. Essentially, there's a growing list of TODOs with no impetus to get them done until they are rediscovered by opening whichever file they are in.
Additionally, they pose the problem of being difficult to track which makes it hard to chart your progress. They basically sit there, doing nothing and tracking nothing.
My personal goal is to begin migrating all of this TODO tracking into some other format. Options like Todoist projects, Google Keep notes, or desktop options like FromScratch create a more centralized alternative for keeping track of what needs to be done and helping to keep a focused approach. Personally, I'm using GitHub Project boards with Markdown checkbox lists - these have a nice feature of showing a progress bar as you check off items.
Now far be it from me to say that all in-code TODOs should be abandoned - there are some instances where it makes sense. For example, I feel like when I'm jumping around in several files, jotting down TODOs as I go, it creates a sense in my head that I'm laying groundwork for the immediate future. Perhaps even using them as "bookmarks" for what I'll jump right into the next day.
This is all just my opinion and if other people have differing opinions / better ways of handling this particular stumbling block of mine, I'm all ears.