Skip to content

fix: task.next events not firing on project dependency completion#21

Merged
danielkov merged 1 commit intomainfrom
fix/project-dep-completed-status-mismatch
Feb 22, 2026
Merged

fix: task.next events not firing on project dependency completion#21
danielkov merged 1 commit intomainfrom
fix/project-dep-completed-status-mismatch

Conversation

@danielkov
Copy link
Copy Markdown
Collaborator

Summary

  • The trg_task_next_on_project_dep_completed trigger checked for project status 'done' but auto-complete sets projects to 'completed' — a status the trigger didn't recognize
  • Workers subscribing to task.next events were never notified when project dependencies were satisfied through auto-completion, causing tasks to sit idle despite being actionable via granary next --all
  • Add 'completed' to the trigger's WHEN clause and all related project dependency status checks

Root cause

The auto-complete trigger (trg_project_auto_complete) sets projects to status 'completed', but the cascade trigger (trg_task_next_on_project_dep_completed) only fires when NEW.status IN ('done', 'archived'). Since no code path ever sets a project to 'done', this cascade trigger has never fired — meaning task.next events were never emitted when project dependencies were satisfied via task completion.

What changed

  • Migration: Recreates trg_task_next_on_project_dep_completed with 'completed' in its WHEN clause, and all 6 task.next triggers with 'completed' in their project dependency status checks
  • Rust queries: get_next, get_all_next, and initiative get_next updated to include 'completed' in NOT IN clauses (defensive)
  • Tests: Two new trigger tests verifying task.next is emitted when project deps are satisfied via auto-complete, and not emitted when only partial deps are satisfied

✻ Clauded...

The trg_task_next_on_project_dep_completed trigger checked for 'done'
status but auto-complete sets projects to 'completed'. Add 'completed'
to the trigger's WHEN clause so workers are notified when project
dependencies are satisfied via auto-completion.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@danielkov danielkov merged commit 40a9c0d into main Feb 22, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant