Oddbean new post about | logout
 so I've been using Nostr as an escape from a problem I can't figure out at work.

Today I'm flipping this on its head and talking to myself on Nostr to solve my problem:

Workflow logic Bug:
main task contains 5-10 sub tasks, all of which need to complete for the main task to complete.

Error: every day a couple hundred (out of 100,000) main tasks are marked as complete even though they should not be because all required subtasks have not been created and/or marked as complete. 

How it works:

Main task gets created (Status incomplete)
-->sub task 1 (status incomplete) starts, ends (status: complete) creates sub task 2
-->sub task 2 starts, end & creates sub task 3
-->etc

every 3 minutes, a separate procedure checks main tasks:
if all sub tasks are complete, main task is updated to complete.


So, for this error to occur, either:
1.  the chain of sub tasks fails to create the next incomplete subtask (look in log)  
2. the commit for the completed sub task happens before the commit for the insert of the new incomplete subtask, and the main task is updated to "complete" in this short window of time
3....

Questions to look up:
Are all Subtasks marked as complete? for the incorrectly completed Main Tasks?