From 6097ea8093b2ff7961824297fb09a451bfa9de4c Mon Sep 17 00:00:00 2001 From: Joe Julian Date: Thu, 2 Apr 2026 07:18:00 -0700 Subject: [PATCH] Filter routine upcoming categories --- main.go | 12 ++++++++++++ main_test.go | 2 ++ 2 files changed, 14 insertions(+) diff --git a/main.go b/main.go index bad2b13..185572b 100644 --- a/main.go +++ b/main.go @@ -571,6 +571,9 @@ func filterUpcomingAssignments(assignments []Assignment, now time.Time, days int var filtered []Assignment for _, assignment := range assignments { if !assignment.DueDate.Before(start) && !assignment.DueDate.After(end) { + if isExcludedUpcomingAssignment(assignment) { + continue + } filtered = append(filtered, assignment) } } @@ -737,6 +740,15 @@ func isRevisionStatus(status string) bool { return strings.Contains(status, "revision") || strings.Contains(status, "revise") } +func isExcludedUpcomingAssignment(assignment Assignment) bool { + category := strings.ToLower(strings.TrimSpace(assignment.Category)) + title := strings.ToLower(strings.TrimSpace(assignment.Title)) + if strings.Contains(category, "preparedness") || strings.Contains(title, "preparedness") { + return true + } + return strings.Contains(category, "r.i.c.e") +} + func inferAssignmentDate(monthDay string, now time.Time) time.Time { return inferDate(monthDay, now, false) } diff --git a/main_test.go b/main_test.go index 5e749f1..146b838 100644 --- a/main_test.go +++ b/main_test.go @@ -42,6 +42,8 @@ func TestFilterUpcomingAssignments(t *testing.T) { assignments := []Assignment{ {DueDate: time.Date(2026, 3, 29, 0, 0, 0, 0, time.UTC), Title: "Soon"}, {DueDate: time.Date(2026, 4, 20, 0, 0, 0, 0, time.UTC), Title: "Later"}, + {DueDate: time.Date(2026, 3, 30, 0, 0, 0, 0, time.UTC), Title: "Preparedness", Category: "Preparedness"}, + {DueDate: time.Date(2026, 3, 31, 0, 0, 0, 0, time.UTC), Title: "Weekly assessment", Category: "R.I.C.E. (weekly assessment)"}, } got := filterUpcomingAssignments(assignments, now, 14) if len(got) != 1 || got[0].Title != "Soon" {