docs: def length(self):
          """
          Returns the length (in days) of the task, by considering the start date
          and the due date. When there is no start date, its creation date is
          used. Returns 0 when one of these dates is missing.
          """
          start = self.start_date() or self.creation_date()
          due = self.due_date()
  
          if start and due and start < due:
              diff = due - start
              return diff.days
          else:
              return 0