Skip to content

feat(tasks): add recurring task support with configurable intervals#3139

Open
desireddymohithreddy0925 wants to merge 11 commits into
Priyanshu-byte-coder:mainfrom
desireddymohithreddy0925:feature/recurring-tasks
Open

feat(tasks): add recurring task support with configurable intervals#3139
desireddymohithreddy0925 wants to merge 11 commits into
Priyanshu-byte-coder:mainfrom
desireddymohithreddy0925:feature/recurring-tasks

Conversation

@desireddymohithreddy0925

Copy link
Copy Markdown
Contributor

Summary

Adds configurable daily, weekly, monthly, and custom day recurrence generation for tasks to eliminate manual recreation of cyclic work.

Closes #2888


Type of Change

  • 🐛 Bug fix (non-breaking change that fixes an issue)
  • ✨ New feature (non-breaking change that adds functionality)
  • 💥 Breaking change (fix or feature that changes existing behavior)
  • 📝 Documentation update
  • ♻️ Refactor / code cleanup (no functional change)
  • ⚡ Performance improvement
  • 🔒 Security fix
  • 🧪 Tests only

What Changed

  • Expanded the Task schema in src/types/project-milestone.ts to support Recurrence.
  • Extended the Kanban board creation form with interval drop-downs and custom days input.
  • Added drop event listeners: Moving a recurring task to the "Done" column will automatically calculate the next interval offset and spawn a new task in the "To Do" column.

How to Test

  1. In the Kanban Board, click "New Task".
  2. Create a task and set the recurrence drop-down to "Daily".
  3. Add the task, then drag it into the "Done" column.
  4. Look in the "To Do" column.

Expected result: A brand new task with the exact same properties is automatically spawned in "To Do", but its due date is advanced exactly one day forward.


Checklist

  • Linked the related issue above
  • Self-reviewed my own diff
  • No unnecessary console.log, debug code, or commented-out blocks
  • npm run lint passes locally
  • No TypeScript errors (npm run type-check)
  • Added or updated tests where applicable
  • Updated documentation / comments if behavior changed

@github-actions github-actions Bot added gssoc26 GSSoC 2026 contribution type:devops GSSoC type bonus: devops (+15 pts) type:feature GSSoC type bonus: new feature type:testing GSSoC type bonus: tests (+10 pts) type:bug GSSoC type bonus: bug fix type:design GSSoC type bonus: UI/design (+10 pts) type:performance GSSoC type bonus: performance (+15 pts) and removed gssoc26 GSSoC 2026 contribution labels Jul 5, 2026
@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown

GSSoC Label Checklist 🏷️

@Priyanshu-byte-coder — please apply the appropriate labels before merging:

Difficulty (pick one):

  • level:beginner — 20 pts
  • level:intermediate — 35 pts
  • level:advanced — 55 pts
  • level:critical — 80 pts

Quality (optional):

  • quality:clean — ×1.2 multiplier
  • quality:exceptional — ×1.5 multiplier

Validation (required to score):

  • gssoc:approved — counts for points
  • gssoc:invalid / gssoc:spam / gssoc:ai-slop — does not score

Type labels (type:*) are auto-detected from files and title. Review and adjust if needed.
Points formula: (difficulty × quality_multiplier) + type_bonus

@github-actions github-actions Bot added the gssoc26 GSSoC 2026 contribution label Jul 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc26 GSSoC 2026 contribution type:bug GSSoC type bonus: bug fix type:design GSSoC type bonus: UI/design (+10 pts) type:devops GSSoC type bonus: devops (+15 pts) type:feature GSSoC type bonus: new feature type:performance GSSoC type bonus: performance (+15 pts) type:testing GSSoC type bonus: tests (+10 pts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(tasks): add recurring task support with configurable intervals

1 participant