docs: def task_done(self, **kw):
          """
          Marks a pending task as done, optionally specifying a completion
          date with the 'end' argument.
          """
          def validate(task):
              if not Status.is_pending(task['status']):
                  raise ValueError("Task is not pending.")
  
          return self._task_change_status(Status.COMPLETED, validate, **kw)