Not really as you say because you are associating the text in a table field, so it creates an extra field in DB wich is not clean.
It could eventually be better in the 'params (or attribs)' field, in JSON.
But this is definitivly not a solution because you set it at the item level, so if you change item, the TODO have changed contents.
I think if the TODO is relative to a work on the page, layout or table, it must be done another way.
TEXTS IN THE PAGE
One of the future devs is the integration of html/strings anywhere in the component. (Translatable and editables in place)
Try to create a table for that, storing any types of strings for anywhere in component. Give their a position name, and other params if you want (Published, ACL, etc...)
Then, write a helper function that is rendering the texts to output them where you want.
Use-them for TODO instruction in the production team, or use them as your please.
You will then be able to easily change the texts strings of your component.