Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Repeat tasks don't repeat as documented #11260

Open
1 of 2 tasks
Siferiax opened this issue Apr 24, 2024 · 1 comment
Open
1 of 2 tasks

Repeat tasks don't repeat as documented #11260

Siferiax opened this issue Apr 24, 2024 · 1 comment

Comments

@Siferiax
Copy link

Siferiax commented Apr 24, 2024

Search first

  • I searched and no similar issues were found

What Happened?

When I saw some strange behavior for repeating tasks, I started to check and found the settings don't work as documented.
Documentation:
You can change the repeater kind to:
.+: It'll repeat from the last time you marked the block done.
++: It'll keep it on the same day of the week.
+: It'll repeat in X y/m/w/d/h from when you originally scheduled it.

Reality:
.+: only works this way when it repeats every day.

Test scenario 1

Repeat every year from when marked done.
Input:

- TODO Repeat every year from when marked done.
  SCHEDULED: <2024-04-14 Sun .+1y>

Expected: 2025-04-24 Thu
Actual output:

- TODO Repeat every year from when marked done.
  SCHEDULED: <2025-04-14 Mon .+1y>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:03]
:END:

Result: FAIL

Test scenario 2

Repeat every month from when marked done.
Input:

- TODO Repeat every month from when marked done.
  SCHEDULED: <2024-04-14 Sun .+1m>

Expected: 2024-05-24 Fri
Actual output:

- TODO Repeat every month from when marked done.
  SCHEDULED: <2024-05-14 Tue .+1m>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:07]
:END:

Result: FAIL

Test scenario 3

Repeat every week from when marked done.
Input:

- TODO Repeat every week from when marked done.
  SCHEDULED: <2024-04-14 Sun .+1w>

Expected: 2024-05-01 Wed
Actual output:

- TODO Repeat every week from when marked done.
  SCHEDULED: <2024-04-28 Sun .+1w>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:10]
:END:

Result: FAIL

Test scenario 4

Repeat every 7 days from when marked done.
Input:

- TODO Repeat every 7 days from when marked done.
  SCHEDULED: <2024-04-14 Sun .+7d>

Expected: 2024-05-01 Wed
Actual output:

- TODO Repeat every 7 days from when marked done.
  SCHEDULED: <2024-04-28 Sun .+7d>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:12]
:END:

Result: FAIL

Test scenario 5

Repeat every 6 days from when marked done.
Input:

- TODO Repeat every 6 days from when marked done.
  SCHEDULED: <2024-04-14 Sun .+6d>

Expected: 2024-04-30 Tue
Actual output:

- TODO Repeat every 6 days from when marked done.
  SCHEDULED: <2024-04-26 Fri .+6d>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:13]
:END:

Result: FAIL

Test scenario 6

Repeat every 8 days from when marked done.
Input:

- TODO Repeat every 8 days from when marked done.
  SCHEDULED: <2024-04-14 Sun .+8d>

Expected: 2024-05-02 Thu
Actual output:

- TODO Repeat every 8 days from when marked done.
  SCHEDULED: <2024-04-30 Tue .+8d>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:15]
:END:

Result: FAIL

Test scenario 7

Repeat every day from when marked done.
Input:

- TODO Repeat every day from when marked done.
  SCHEDULED: <2024-04-14 Sun .+1d>

Expected: 2024-04-25 Thu
Actual output:

- TODO Repeat every day from when marked done.
  SCHEDULED: <2024-04-25 Thu .1d>  
:logbook:
  * State "DONE" from "TODO" [2024-04-24 Wed 08:18]
:END:

Result: PASS

Extra results for 1 to 9 days from when marked done:
IMG_0519

This shows some really weird behavior.

Reproduce the Bug

See above for detailed tests scenario + results.

Expected Behavior

No response

Screenshots

No response

Desktop or Mobile Platform Information

Logseq version: 0.10.8 on iPad.

Additional Context

No response

Are you willing to submit a PR? If you know how to fix the bug.

  • I'm willing to submit a PR (Thank you!)
@Doorknob2261
Copy link

Doorknob2261 commented Apr 25, 2024

Neither .+ and ++ repeaters are working as expected. The current .+ logic should be reassigned to ++.

.+ open issue #5645. Was marked as enhancement.
Expected: repeat from the last time you marked the block done i.e., today+interval.
Actual: repeat from last due and skip ahead until new the date is in the future. This is what ++ should do, as per the Orgmode convention.

++
Expected: Unclear. The documentation states " ++: It'll keep it on the same day of the week". However, this isn't exclusive of one repeater type. This is more of a factor of the repeater interval (weeks), rather. The only repeater that doesn't afford consistent day of the week by design is the repeat from the last time you marked the block done (today+interval) i.e., what .+ should be doing.

Actual: repeat from last due. This is what + does currently but here with ++ it slightly different: it doesn't update the due date when completed early. It does write an entry to the logbook. This issue was reported in the past open issue #7731 and #1909. Issue aside, none of this is the expected behavior of ++ anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants