I have a git repo set up, and I run: "vim `date -I`", which opens a text file named for the current date (2020-02-08 today for example). Then I'll put in notes about what it is I'm currently working on.
I've come up with the convention of separating tasks with three equal signs (===) and separating updates to a single task with (--).
The main thing it's been helpful for to me, which is honestly probably why I've kept up with it, is that I'm bad about doing my daily timesheets. So once a month when our accounting lady gets after me, I'll go back through my notes and fill everything in.
I used just one big file right now and one thing good about it is that you can search all your notes with one command.
I also use the uuid command to tag/reference sections. Then, I can just put the cursor on the uuid and hit '*' to jump right to that spot in the file.
I guess that's basically what you wrote, but I had to play with it a bit to understand.
"put an entry with the date/time (for keeping plan.txt)
command! -nargs=* Entry call s:RunEntry()
let s:tm = "\n---" . strftime("%d/%m/%y %H:%M:%S") . "----------------------\n"
execute "normal! i" . s:tm
" enter insert mode because it's time to write stuff now.