Recurrence: re-running done spawns duplicate instances (no status guard) #9
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
complete_task(src/core/service.rs:258-278) unconditionally marks the task done and callsspawn_next, with no check that the task is currently active.Impact: running
next done <id>twice on the same recurring task — or on an already-Done/Cancelled task — marks it done again and spawns a second next instance each time. Also spawns even when the task is blocked or has open children.Fix: guard
complete_taskso it is a no-op (or a clear error) when the task is not in an active (Open/Started) state; only spawn on a genuine open→done transition. Add tests for: re-donedoes not spawn a duplicate;doneon already-done/cancelled.Found in review. Spec ambiguity to resolve: should
doneon a resolved task error or no-op? (REQUIREMENTS §7 silent.)