todotxt / todo.txt

‼️ A complete primer on the whys and hows of todo.txt.
GNU General Public License v3.0
2.33k stars 102 forks source link

Completion date: Optional or not? #26

Closed ptosi closed 3 years ago

ptosi commented 5 years ago

The illustration of the todo.txt format states

Optional - Completion Date

while the definition of the format for complete tasks states that the completion date is required:

With the completed date (required), if you've used the prepended date (optional), you can calculate how many days it took to complete a task.

Therefore, is the "Optional" supposed to mean "depending on the completion status of the task" or is this a discrepancy? In particular, can a complete task omit its completion date?

davidstosik commented 5 years ago

I'm confused as well, and here are two more lines that add to the confusion (emphasis mine):

Optional -- Creation date (must be specified if completion date is)

If you’ve prepended the creation date to your task, on completion it will appear directly after the completion date.

So far we have:

Problem 💥

Now, what happens when I complete the task call mom (nothing more on the todo.txt line, especially no creation date, as it is optional)?

  1. Completed date is required, so I need to add it:
    x 2019-07-03 call mom
  2. But now, as completion date is provided, creation date must be specified too, but I don't have it!
    x 2019-07-03 ????-??-?? call mom

Interpretation 💭

My take, which does not perfectly match the spec (no logical interpretation can, in my opinion) is that:

Valid ✅

Invalid ❌

Arguable point

My personal interpretation states that completion date is required when a task is complete. Some people might be happy to just x out a completed task without having to input more text.