Repeatable tasks appear to just have start/due dates reset, instead of creating a clone

It would make more sense to me to have recurring tasks get reset at midnight instead of immediately.

I see this more as a view setting. For example you could say that you like to show “all tasks”, “active tasks” or only “done tasks”.

image
This is from TodoMVC

Additionally to this we’re just merging a pull request that makes tasks in general not disappear immediately when you mark them as done.

Related: some visual inspiration how to select repeatable tasks

Hi! How about this: if the task has a start date, only mark it as undone when that date is reached. This way one can easily know if the task has been done or not. In my particular use case I have monthly tasks that I can only do within some period of the month, like the 13th until the 16th. The tasks always appear as undone and I can’t do them yet.
I believe this would also solve the problem for those that have daily tasks but haven’t gone to bed before midnight: just set the start date for 4am or whatever suits you.

PS: At last, a simple opensource (kanban) task manager but with decent looks! Many thanks!

My 2c on this one. I would like to see the history of when the recurring task was completed and how many times. So the option of duplication on completion sounds good to me. Another option could be to show a list of completion dates inside the task details.

Hopping in here as this is my one hangup with Vikunja - everything else works so wonderfully (incredible work, really) but the way repeating tasks are implemented is pretty jarring. I planned to use it for infrequent housework but it’s pretty difficult to see at a glance what has and hasn’t been done in a given time period with how it currently works.

This behavior has probably been described in a few other posts, but here’s my take:

Repeating tasks that are marked as complete should stay done (marked complete) until indicated by the next repeating interval - e.x.

  • Daily (default) - reset at midnight
  • Daily (from current date) - ^
  • Weekly (default) - 7 days after the start date
  • Weekly (from current date) - in 7 days from marking completion

(I’ll stop here as I’m kind of just writing what recurrence does currently, at least from my understanding).

I like Olivetree’s suggestion as well that the task should be marked un-done at the (new) start date if it has one. Otherwise mark undone one repeat interval from the due date or date of completion according to recurrence settings.

Whether the “new” task is a clone or just the old task un-marked as done, I don’t think it particularly matters. My preference is to make it a clone of the template task, which starts with the original content/settings and is modified by any edits that occur on the (at the time of the edit) currently active (latest) clone. Edit a past clone = not persisted to future tasks. Comments should not be carried forward, probably.

Re: shared lists - definitely should be a list setting. I’d imagine it’s likely that the same repeat semantic works for (nearly) all users of a shared list.

Finally,

If there’s a task repeating daily and you don’t do it a few days, there would be multiple overdue tasks.

This behavior should be an option per-task (common to all users in a shared list as well). I can see value in both letting tasks stack up and just pushing the date forward for one task, for different scenarios.

And fwiw, if I ever dust off my contributor hat I’d love to take a crack at this one :slight_smile:

1 Like

I like this.

Not sure about the cloning aspect, but maybe let’s start with the un-marking and go from there.

1 Like

Perhaps there should be a weekly clearing function for the progress bar?

just opened Self-replicating Repeating Tasks which is related and this was also requested in Temporary marking as done on recurring tasks